Guosmilesmile commented on code in PR #12979: URL: https://github.com/apache/iceberg/pull/12979#discussion_r2107407959
########## flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java: ########## @@ -216,7 +235,44 @@ public SimpleVersionedSerializer<IcebergCommittable> getCommittableSerializer() @Override public void addPostCommitTopology( DataStream<CommittableMessage<IcebergCommittable>> committables) { - // TODO Support small file compaction + + if (!compactMode) { + return; + } + + SingleOutputStreamOperator<TableChange> tableChangeStream = + committables + .global() + .process(new CommittableToTableChangeConverter(tableLoader.clone())) + .uid("committable-to-table-change-converter") + .forceNonParallel(); + try { + + RewriteDataFiles.Builder rewriteBuilder = + RewriteDataFiles.builder().properties(compactProperties); + + TriggerLockFactory triggerLockFactory = + LockFactoryBuilder.build(compactProperties, table.name()); + TableMaintenance.Builder builder = + TableMaintenance.forChangeStream(tableChangeStream, tableLoader, triggerLockFactory) Review Comment: Yes, I have done ########## flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java: ########## @@ -530,7 +586,26 @@ IcebergSink build() { flinkWriteConf, equalityFieldIds, flinkWriteConf.branch(), - overwriteMode); + overwriteMode, + createCompactionProperties(writeOptions, readableConfig.toMap())); + } + + /** + * Create the properties for the compaction. The configuration from SQL hints has a higher + * priority than that from SET statements. + * + * @param writeProperties config from SQL Hints. Height level. + * @param setProperties config from SET statement. Low level. + * @return config of compaction + */ + private Map<String, String> createCompactionProperties( Review Comment: Done -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For additional commands, e-mail: issues-h...@iceberg.apache.org