Details
-
Sub-task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
Description
When a previous request has already purged the snapshot. There will be a race condition between SnapshotDeletingService and Snapshot Purge request. where we resend the same request. We can ignore this request as this snapshot is already purged.
2024-02-14 21:50:59,574 [OM StateMachine ApplyTransaction Thread - 0] WARN org.apache.hadoop.ozone.om.snapshot.SnapshotCache: Key: '/vol-yu9w1/buck-kmkp4/snap1707922796' does not exist in cache. 2024-02-14 21:50:59,907 [OM StateMachine ApplyTransaction Thread - 0] ERROR org.apache.hadoop.ozone.om.ratis.OzoneManagerStateMachine: Terminating with exit status 1: Request cmdType: SnapshotPurge clientId: "client-62D7790F8E6C"SnapshotPurgeRequest { snapshotDBKeys: "/vol-yu9w1/buck-kmkp4/snap1707922796"} failed with exception java.lang.NullPointerException at org.apache.hadoop.ozone.om.snapshot.SnapshotUtils.getNextActiveSnapshot(SnapshotUtils.java:152) at org.apache.hadoop.ozone.om.request.snapshot.OMSnapshotPurgeRequest.validateAndUpdateCache(OMSnapshotPurgeRequest.java:99) at org.apache.hadoop.ozone.protocolPB.OzoneManagerRequestHandler.handleWriteRequest(OzoneManagerRequestHandler.java:375) at org.apache.hadoop.ozone.om.ratis.OzoneManagerStateMachine.runCommand(OzoneManagerStateMachine.java:568) at org.apache.hadoop.ozone.om.ratis.OzoneManagerStateMachine.lambda$1(OzoneManagerStateMachine.java:359) at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1604) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)
Attachments
Issue Links
- is duplicated by
-
HDDS-10421 [Snapshot] OM corruption due to NullPointerException
-
- Resolved
-
- links to