HaraldVanWoerkom opened a new issue, #1366:
URL: https://github.com/apache/iceberg-python/issues/1366

   ### Apache Iceberg version
   
   0.7.1
   
   ### Please describe the bug 🐞
   
   I have multiple processes that write to a table. They sometimes clash, 
resulting in a failed commit, which I can retry (I use tenacity for that). 
However, if the table is freshly created, two concurrent writes are NOT 
detected. Both pass, while only one of them is written (probably the last one 
wins, I did not verify).
   
   This probably has to do with the fact that a newly created table has no 
snapshot and the commit clash detection checks that the snapshot ID has not 
changed. Probably there is no code that checks that if no snapshot was present 
at the start of the write, there should also be no snapshot at commit time.
   
   As a work-around I now add a dummy row after the table is created and then 
delete that row. This is a bit clunky, is there a simple way to force create a 
snapshot? It seems pyiceberg tries to prevent empty snapshots, which is great 
unless I really want a new snapshot.


-- 
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: issues-unsubscr...@iceberg.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org
For additional commands, e-mail: issues-h...@iceberg.apache.org

Reply via email to