fresh-borzoni commented on code in PR #3639:
URL: https://github.com/apache/fluss/pull/3639#discussion_r3592175216
##########
fluss-lake/fluss-lake-iceberg/src/main/java/org/apache/fluss/lake/iceberg/tiering/IcebergLakeWriter.java:
##########
@@ -68,6 +68,7 @@ public IcebergLakeWriter(
throws IOException {
this.icebergCatalog = icebergCatalogProvider.get();
this.icebergTable = getTable(writerInitContext.tablePath());
+ IcebergPartitionSpecValidator.validate(icebergTable,
writerInitContext.tableInfo());
Review Comment:
@litiliu
Realised my own comment created a hole here: now nothing checks the spec
between the enumerator validation and the actual write. If someone evolves the
spec in that window, we're silently writing wrong partition metadata again, the
exact thing this PR fixes.
Shall we just keep the validate here too? Table's already loaded, it's one
line. And it can't crash-loop like before as old drift gets quarantined by the
enumerator now, so this would only ever fire on a mid-round change.
Worst case one restart, next round the table is quarantined anyway. This
seems like a correct tradeoff.
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]