This doc explains atomicity in delta lake using trasaction logs. I am curious about the section in the image below.
Specifically point number 4
It checks to see whether any new commits have been made to the table, and updates the table silently to reflect those changes, then simply retries User 2’s commit on the newly updated table (without any data processing), successfully committing 000002.json.
As an example
- User 1 increments column
count
of row id1
by 100. (initial value 0) - User 2 increments column
count
of row id1
by 2. - The above 2 happen concurrently.
What would be final value of the column count
of row with id 1
? And how?