Gabriel39 commented on code in PR #67904:
URL: https://github.com/apache/doris/pull/67904#discussion_r3999322465


##########
fe/fe-connector/fe-connector-iceberg/src/main/java/org/apache/doris/connector/iceberg/IcebergConnectorMetadata.java:
##########
@@ -2131,6 +2134,9 @@ public Optional<ConnectorMvccSnapshot> beginQuerySnapshot(
                 : loadLatestSnapshotPin(session, iceHandle);
         ConnectorMvccSnapshot.Builder snapshot = 
ConnectorMvccSnapshot.builder()
                 .snapshotId(pin.snapshotId).schemaId(pin.schemaId);
+        if (pin.specId >= 0) {
+            snapshot.property(PARTITION_SPEC_ID_PROPERTY, 
Integer.toString(pin.specId));

Review Comment:
   Out of scope for this PR. I reproduced the spec-only add on the pre-PR 
implementation at ee4a91720f and on the current head: a cached snapshot/schema 
pin changes from RANGE to UNPARTITIONED after updateSpec().addField("id"), with 
no data or schema ID change. Both runs fail the same RANGE assertion. 
IcebergTableHandle, the partition-view/list builders, and their 
snapshot/schema-only cache identities are unchanged by this PR. The earlier fix 
makes the schema object internally consistent for the newly retained schema 
pin; it does not introduce snapshot isolation for partition-spec evolution. 
Carrying spec versions through all RANGE/LIST views and cache identities is a 
separate existing Iceberg issue. Resolving this thread without broadening the 
Paimon schema-generation/timestamp fix.



-- 
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]

Reply via email to