[
https://issues.apache.org/jira/browse/HIVE-26107?focusedWorklogId=764048&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-764048
]
ASF GitHub Bot logged work on HIVE-26107:
-----------------------------------------
Author: ASF GitHub Bot
Created on: 29/Apr/22 07:50
Start Date: 29/Apr/22 07:50
Worklog Time Spent: 10m
Work Description: deniskuzZ commented on code in PR #3172:
URL: https://github.com/apache/hive/pull/3172#discussion_r861546821
##########
ql/src/java/org/apache/hadoop/hive/ql/DriverUtils.java:
##########
@@ -46,26 +46,46 @@ private DriverUtils() {
throw new UnsupportedOperationException("DriverUtils should not be
instantiated!");
}
- public static void runOnDriver(HiveConf conf, String user, SessionState
sessionState,
+ @FunctionalInterface
+ private interface DriverCreator {
+ Driver createDriver(QueryState qs);
+ }
+
+ public static void runOnDriver(HiveConf conf, SessionState sessionState,
String query) throws HiveException {
- runOnDriver(conf, user, sessionState, query, null, -1);
+ runOnDriver(conf, sessionState, query, null, -1);
}
/**
* For Query Based compaction to run the query to generate the compacted
data.
*/
- public static void runOnDriver(HiveConf conf, String user,
+ public static void runOnDriver(HiveConf conf,
SessionState sessionState, String query, ValidWriteIdList writeIds, long
compactorTxnId)
throws HiveException {
if(writeIds != null && compactorTxnId < 0) {
Review Comment:
nit: space
##########
ql/src/java/org/apache/hadoop/hive/ql/DriverUtils.java:
##########
@@ -46,26 +46,46 @@ private DriverUtils() {
throw new UnsupportedOperationException("DriverUtils should not be
instantiated!");
}
- public static void runOnDriver(HiveConf conf, String user, SessionState
sessionState,
+ @FunctionalInterface
+ private interface DriverCreator {
+ Driver createDriver(QueryState qs);
+ }
+
+ public static void runOnDriver(HiveConf conf, SessionState sessionState,
String query) throws HiveException {
- runOnDriver(conf, user, sessionState, query, null, -1);
+ runOnDriver(conf, sessionState, query, null, -1);
}
/**
* For Query Based compaction to run the query to generate the compacted
data.
*/
- public static void runOnDriver(HiveConf conf, String user,
+ public static void runOnDriver(HiveConf conf,
SessionState sessionState, String query, ValidWriteIdList writeIds, long
compactorTxnId)
throws HiveException {
if(writeIds != null && compactorTxnId < 0) {
throw new
IllegalArgumentException(JavaUtils.txnIdToString(compactorTxnId) +
" is not valid. Context: " + query);
}
+ runOnDriverInternal(query, conf, sessionState, (qs) -> new Driver(qs,
writeIds, compactorTxnId));
+ }
+
+ /**
+ * For Query Based compaction to run the query to generate the compacted
data.
+ */
+ public static void runOnDriver(HiveConf conf, SessionState sessionState,
String query, long analyzeTableWriteId)
+ throws HiveException {
+ if(analyzeTableWriteId < 0) {
Review Comment:
nit: space
Issue Time Tracking
-------------------
Worklog Id: (was: 764048)
Time Spent: 2h 40m (was: 2.5h)
> Worker shouldn't inject duplicate entries in `ready for cleaning` state into
> the compaction queue
> -------------------------------------------------------------------------------------------------
>
> Key: HIVE-26107
> URL: https://issues.apache.org/jira/browse/HIVE-26107
> Project: Hive
> Issue Type: Improvement
> Reporter: László Végh
> Assignee: László Végh
> Priority: Major
> Labels: pull-request-available
> Time Spent: 2h 40m
> Remaining Estimate: 0h
>
> How to reproduce:
> 1) create an acid table and load some data ;
> 2) manually trigger the compaction for the table several times;
> 4) inspect compaction_queue: There are multiple entries in 'ready for
> cleaning' state for the same table.
>
> Expected behavior: All compaction request after the first one should be
> rejected until the table is changed again.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)