Skip to content

Commit

Permalink
Fixing upgrade to reload Metaclient for deltastreamer writes
Browse files Browse the repository at this point in the history
  • Loading branch information
nsivabalan committed Aug 4, 2022
1 parent 51599af commit 1f84066
Showing 1 changed file with 6 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -1550,13 +1550,16 @@ protected void tryUpgrade(HoodieTableMetaClient metaClient, Option<String> insta
new UpgradeDowngrade(metaClient, config, context, upgradeDowngradeHelper);

if (upgradeDowngrade.needsUpgradeOrDowngrade(HoodieTableVersion.current())) {
metaClient = HoodieTableMetaClient.reload(metaClient);
// Ensure no inflight commits by setting EAGER policy and explicitly cleaning all failed commits
List<String> instantsToRollback = getInstantsToRollback(metaClient, HoodieFailedWritesCleaningPolicy.EAGER, instantTime);

Map<String, Option<HoodiePendingRollbackInfo>> pendingRollbacks = getPendingRollbackInfos(metaClient);
instantsToRollback.forEach(entry -> pendingRollbacks.putIfAbsent(entry, Option.empty()));
if (!instantsToRollback.isEmpty()) {
Map<String, Option<HoodiePendingRollbackInfo>> pendingRollbacks = getPendingRollbackInfos(metaClient);
instantsToRollback.forEach(entry -> pendingRollbacks.putIfAbsent(entry, Option.empty()));

rollbackFailedWrites(pendingRollbacks, true);
rollbackFailedWrites(pendingRollbacks, true);
}

new UpgradeDowngrade(metaClient, config, context, upgradeDowngradeHelper)
.run(HoodieTableVersion.current(), instantTime.orElse(null));
Expand Down

0 comments on commit 1f84066

Please sign in to comment.