[minor] Follow 3178, fix the flink metadata table compaction (#5175)
This commit is contained in:
@@ -108,6 +108,13 @@ public class FlinkHoodieBackedTableMetadataWriter extends HoodieBackedTableMetad
|
||||
List<HoodieRecord> preppedRecordList = HoodieList.getList(preppedRecords);
|
||||
|
||||
try (HoodieFlinkWriteClient writeClient = new HoodieFlinkWriteClient(engineContext, metadataWriteConfig)) {
|
||||
if (canTriggerTableService) {
|
||||
// trigger compaction before doing the delta commit. this is to ensure, if this delta commit succeeds in metadata table, but failed in data table,
|
||||
// we would have compacted metadata table and so could have included uncommitted data which will never be ignored while reading from metadata
|
||||
// table (since reader will filter out only from delta commits)
|
||||
compactIfNecessary(writeClient, instantTime);
|
||||
}
|
||||
|
||||
if (!metadataMetaClient.getActiveTimeline().containsInstant(instantTime)) {
|
||||
// if this is a new commit being applied to metadata for the first time
|
||||
writeClient.startCommitWithTime(instantTime);
|
||||
@@ -146,7 +153,6 @@ public class FlinkHoodieBackedTableMetadataWriter extends HoodieBackedTableMetad
|
||||
// reload timeline
|
||||
metadataMetaClient.reloadActiveTimeline();
|
||||
if (canTriggerTableService) {
|
||||
compactIfNecessary(writeClient, instantTime);
|
||||
cleanIfNecessary(writeClient, instantTime);
|
||||
writeClient.archive();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user