wangtaohz opened a new pull request, #8494:
URL: https://github.com/apache/iceberg/pull/8494

   This is a fix for an `NPE` problem that occurs when calling 
`InMemoryLockManager#release` using Hadoop catalog, as described in this 
issue(#4550). The problem arises when `lockManager#release` is finally called 
after renaming metadata (`HadoopTableOperations#renameToFinal`).
   
   This `NPE` can potentially cause the manifest list files to be cleaned 
(`SnapshotProducer#cleanAll`). However, this could be a mistaken cleanup since 
when the `NPE` is thrown, the renaming metadata file may have already been 
completed. In this case, Iceberg considers the operation to be completed 
(although the `version-hint.text` has not yet been updated).
   
   The exact cause of the `NPE` has not been identified, although it has been 
reproduced multiple times. Other concurrent operations, such as calling 
`InMemoryLockManager#close`, may be a possible cause.
   
   Nevertheless, simply fixing this `NPE` when releasing will not introduce any 
other risks.
   
   Closes #4550.


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