kyteware commented on PR #1373:
URL: https://github.com/apache/iceberg-rust/pull/1373#issuecomment-2907985029

   I'm looking at the behaviour of the method, and it seems as though an edge 
case may cause unwanted behaviour.
   
   The method is structured into two parts
   1. Read the table of namespace properties to separate the property edits 
into inserts and updates
   2. Make a transaction to do all inserts and updates at the same time
   
   Consider two calls both trying to add different values to the same 
previously non-existed property:
   If their reads both happen before either of their transactions, they will 
both decide they must insert their properties.
   Then, one will successfully insert it and the other's transaction will fail 
because the property is already present, returning an SQLX error.
   
   Is this acceptable behaviour, or should we move to using `UPSERT` instead?


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

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