szehon-ho commented on code in PR #16859:
URL: https://github.com/apache/iceberg/pull/16859#discussion_r4021505326
##########
core/src/main/java/org/apache/iceberg/MetadataLogEntriesTable.java:
##########
@@ -19,20 +19,43 @@
package org.apache.iceberg;
import java.util.List;
+import java.util.Map;
+import org.apache.iceberg.exceptions.NotFoundException;
import org.apache.iceberg.io.CloseableIterable;
+import org.apache.iceberg.io.FileIO;
import org.apache.iceberg.relocated.com.google.common.collect.Lists;
import org.apache.iceberg.types.Types;
import org.apache.iceberg.util.SnapshotUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+/**
+ * A {@link Table} implementation that exposes a table's metadata log as rows.
+ *
+ * <p>Each row represents a historical or current metadata file and includes
the snapshot details
+ * and table properties recorded in that file. The current metadata is
included as the latest row.
+ *
+ * <p>Queries that reference {@code properties} read each retained historical
metadata file. These
+ * additional reads are skipped when {@code properties} is not referenced, and
the already loaded
+ * current metadata is reused.
+ */
public class MetadataLogEntriesTable extends BaseMetadataTable {
+ private static final Logger LOG =
LoggerFactory.getLogger(MetadataLogEntriesTable.class);
+
+ private static final int PROPERTIES_FIELD_ID = 6;
Review Comment:
Could we define `PROPERTIES` as a `Types.NestedField` constant and use
`PROPERTIES.fieldId()` here? That keeps the field definition and projection
check together, while making a separate static assertion unnecessary. A
positive `shouldLoadProperties` boolean may also read more clearly.
--
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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]