[ https://issues.apache.org/jira/browse/HIVE-26793?focusedWorklogId=839559&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-839559 ]
ASF GitHub Bot logged work on HIVE-26793: ----------------------------------------- Author: ASF GitHub Bot Created on: 17/Jan/23 10:03 Start Date: 17/Jan/23 10:03 Worklog Time Spent: 10m Work Description: deniskuzZ commented on code in PR #3822: URL: https://github.com/apache/hive/pull/3822#discussion_r1072005883 ########## ql/src/java/org/apache/hadoop/hive/ql/txn/compactor/Initiator.java: ########## @@ -613,8 +613,9 @@ private boolean isEligibleForCompaction(CompactionInfo ci, return false; } - if (isNoAutoCompactSet(t.getParameters())) { - LOG.info("Table " + tableName(t) + " marked " + hive_metastoreConstants.TABLE_NO_AUTO_COMPACT + + Map<String, String> dbParams = computeIfAbsent(ci.dbname, () -> resolveDatabase(ci)).getParameters(); Review Comment: ```` if (replIsCompactionDisabledForTable(t)) { skipTables.add(ci.getFullTableName()); return false; } ```` Would be better if we could refactor the method and use a cache of skipTables/skipDBs instead of doing the same evaluation (isNoAutoCompactSet) for every Table in skipped Db / every Partition of skipped Table Issue Time Tracking ------------------- Worklog Id: (was: 839559) Time Spent: 3h 50m (was: 3h 40m) > Create a new configuration to override "no compaction" for tables > ----------------------------------------------------------------- > > Key: HIVE-26793 > URL: https://issues.apache.org/jira/browse/HIVE-26793 > Project: Hive > Issue Type: Improvement > Reporter: Kokila N > Assignee: Kokila N > Priority: Major > Labels: pull-request-available > Time Spent: 3h 50m > Remaining Estimate: 0h > > Currently a simple user can create a table with > {color:#6a8759}no_auto_compaction=true{color} table property and create an > aborted write transaction writing to this table. This way a malicious user > can prevent cleaning up data for the aborted transaction, creating > performance degradation. > This configuration should be allowed to overridden on a database level: > adding {color:#6a8759}no_auto_compaction=false{color} should override the > table level setting forcing the initiator to schedule compaction for all > tables. -- This message was sent by Atlassian Jira (v8.20.10#820010)