[ https://issues.apache.org/jira/browse/HIVE-26319?focusedWorklogId=782328&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-782328 ]
ASF GitHub Bot logged work on HIVE-26319: ----------------------------------------- Author: ASF GitHub Bot Created on: 17/Jun/22 09:08 Start Date: 17/Jun/22 09:08 Worklog Time Spent: 10m Work Description: kasakrisz commented on code in PR #3362: URL: https://github.com/apache/hive/pull/3362#discussion_r899928173 ########## iceberg/iceberg-handler/src/main/java/org/apache/iceberg/mr/hive/HiveIcebergStorageHandler.java: ########## @@ -411,23 +411,27 @@ public boolean commitInMoveTask() { public void storageHandlerCommit(Properties commitProperties, boolean overwrite) throws HiveException { String tableName = commitProperties.getProperty(Catalogs.NAME); Configuration configuration = SessionState.getSessionConf(); - Optional<JobContext> jobContext = generateJobContext(configuration, tableName, overwrite); - if (jobContext.isPresent()) { + Optional<List<JobContext>> jobContextList = generateJobContext(configuration, tableName, overwrite); + if (!jobContextList.isPresent()) { + return; + } + + for (JobContext jobContext : jobContextList.get()) { OutputCommitter committer = new HiveIcebergOutputCommitter(); try { - committer.commitJob(jobContext.get()); + committer.commitJob(jobContext); } catch (Throwable e) { // Aborting the job if the commit has failed LOG.error("Error while trying to commit job: {}, starting rollback changes for table: {}", - jobContext.get().getJobID(), tableName, e); + jobContext.getJobID(), tableName, e); try { - committer.abortJob(jobContext.get(), JobStatus.State.FAILED); + committer.abortJob(jobContext, JobStatus.State.FAILED); } catch (IOException ioe) { LOG.error("Error while trying to abort failed job. There might be uncleaned data files.", ioe); // no throwing here because the original exception should be propagated } throw new HiveException( - "Error committing job: " + jobContext.get().getJobID() + " for table: " + tableName, e); + "Error committing job: " + jobContext.getJobID() + " for table: " + tableName, e); Review Comment: removed ########## iceberg/iceberg-handler/src/main/java/org/apache/iceberg/mr/hive/HiveIcebergStorageHandler.java: ########## @@ -411,23 +411,27 @@ public boolean commitInMoveTask() { public void storageHandlerCommit(Properties commitProperties, boolean overwrite) throws HiveException { String tableName = commitProperties.getProperty(Catalogs.NAME); Configuration configuration = SessionState.getSessionConf(); - Optional<JobContext> jobContext = generateJobContext(configuration, tableName, overwrite); - if (jobContext.isPresent()) { + Optional<List<JobContext>> jobContextList = generateJobContext(configuration, tableName, overwrite); + if (!jobContextList.isPresent()) { + return; + } + + for (JobContext jobContext : jobContextList.get()) { OutputCommitter committer = new HiveIcebergOutputCommitter(); try { - committer.commitJob(jobContext.get()); + committer.commitJob(jobContext); } catch (Throwable e) { // Aborting the job if the commit has failed LOG.error("Error while trying to commit job: {}, starting rollback changes for table: {}", - jobContext.get().getJobID(), tableName, e); + jobContext.getJobID(), tableName, e); Review Comment: removed Issue Time Tracking ------------------- Worklog Id: (was: 782328) Time Spent: 1h 50m (was: 1h 40m) > Iceberg integration: Perform update split early > ----------------------------------------------- > > Key: HIVE-26319 > URL: https://issues.apache.org/jira/browse/HIVE-26319 > Project: Hive > Issue Type: Improvement > Components: File Formats > Reporter: Krisztian Kasa > Assignee: Krisztian Kasa > Priority: Major > Labels: pull-request-available > Fix For: 4.0.0 > > Time Spent: 1h 50m > Remaining Estimate: 0h > > Extend update split early to iceberg tables like in HIVE-21160 for native > acid tables -- This message was sent by Atlassian Jira (v8.20.7#820007)