raunaqmorarka commented on code in PR #18188:
URL: https://github.com/apache/iceberg/pull/18188#discussion_r4093889079


##########
core/src/main/java/org/apache/iceberg/rest/RESTTableOperations.java:
##########
@@ -315,6 +387,8 @@ private TableMetadata 
updateCurrentMetadata(LoadTableResponse response) {
       this.current = checkUUID(current, response.tableMetadata());
     }
 
+    this.eTag = responseETag;

Review Comment:
   They still move together. When the metadata location is unchanged, the 
response holds the same metadata as `current`, so its ETag is valid for 
`current`.
   
   The ETag can change even when the location does not. For example, 
`RESTCatalogAdapter` builds it from the query params, and those differ between 
loadTable and refresh. If the ETag only updates on a location change, refresh 
keeps sending the old loadTable ETag and never gets a 304. Three of the new 
tests fail when the assignment moves inside the `if`.
   



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