fengguangyuan commented on issue #9741:
URL: https://github.com/apache/iceberg/issues/9741#issuecomment-1953373456

   > @fengguangyuan
   > 
   > > but at some point a Compact task committed before the Overwrite task 
trying to call the internal method to commit metadata, obviously these 
overwrite tasks will fail with ValidationException
   > 
   > How come optimistic concurrency controls are not dealing with this? Does 
Iceberg have to, is it turned on automatically or do I have to set up things 
myself?
   
   Question 1: OCC is only for `CommitFailedException` with 4 retries, but fail 
immediately for other cases. 
   Question 2: Maybe `base_table` is in `COPY_ON_WRITE` mode? Please try to 
change the table property to `MERGE_ON_READ`.
   ```java
     public static final String MERGE_MODE = "write.merge.mode";
     // public enum RowLevelOperationMode {
     //    COPY_ON_WRITE("copy-on-write"),
     //    MERGE_ON_READ("merge-on-read");
     // }
     public static final String MERGE_MODE_DEFAULT = 
RowLevelOperationMode.COPY_ON_WRITE.modeName();
   ```
   


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