Wei-Chiu Chuang created HDDS-10300:
--------------------------------------

             Summary: InstallSnapshot may fail if OM metadata dir and OM DB dir 
are in different local storage partitions
                 Key: HDDS-10300
                 URL: https://issues.apache.org/jira/browse/HDDS-10300
             Project: Apache Ozone
          Issue Type: Bug
            Reporter: Wei-Chiu Chuang


OM DB snapshot installation requires hard link, which can fail if OM metadata 
dir and OM DB dir are in different partitions.

{noformat}
2024-01-31 14:14:59,406 ERROR 
[pool-33-thread-1]-org.apache.hadoop.ozone.om.OzoneManager: Failed to move 
downloaded DB checkpoint 
/dfs1/hadoop-ozone/om/ozone-metadata/snapshot/om.db.candidate to metadata 
directory /ssd/hadoop-ozone/om/data/om.db. Exception: {}. Resetting to original 
DB.
java.nio.file.FileSystemException: /ssd/hadoop-ozone/om/data/om.db/000031.sst 
-> /dfs1/hadoop-ozone/om/ozone-metadata/snapshot/om.db.candidate/000031.sst: 
Invalid cross-device link
        at 
sun.nio.fs.UnixException.translateToIOException(UnixException.java:91)
        at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
        at 
sun.nio.fs.UnixFileSystemProvider.createLink(UnixFileSystemProvider.java:476)
        at java.nio.file.Files.createLink(Files.java:1086)
        at 
org.apache.hadoop.ozone.om.snapshot.OmSnapshotUtils.linkFiles(OmSnapshotUtils.java:169)
        at 
org.apache.hadoop.ozone.om.OzoneManager.moveCheckpointFiles(OzoneManager.java:3816)
        at 
org.apache.hadoop.ozone.om.OzoneManager.replaceOMDBWithCheckpoint(OzoneManager.java:3796)
        at 
org.apache.hadoop.ozone.om.OzoneManager.installCheckpoint(OzoneManager.java:3671)
        at 
org.apache.hadoop.ozone.om.OzoneManager.installCheckpoint(OzoneManager.java:3606)
        at 
org.apache.hadoop.ozone.om.OzoneManager.installSnapshotFromLeader(OzoneManager.java:3583)
        at 
org.apache.hadoop.ozone.om.ratis.OzoneManagerStateMachine.lambda$6(OzoneManagerStateMachine.java:513)
        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:750)

2024-01-31 14:14:59,406 ERROR 
[pool-33-thread-1]-org.apache.hadoop.ozone.om.OzoneManager: Failed to install 
Snapshot from om3 as OM failed to replace DB with downloaded checkpoint. 
Reloading old OM state.
java.nio.file.FileSystemException: /ssd/hadoop-ozone/om/data/om.db/000031.sst 
-> /dfs1/hadoop-ozone/om/ozone-metadata/snapshot/om.db.candidate/000031.sst: 
Invalid cross-device link
        at 
sun.nio.fs.UnixException.translateToIOException(UnixException.java:91)
        at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
        at 
sun.nio.fs.UnixFileSystemProvider.createLink(UnixFileSystemProvider.java:476)
        at java.nio.file.Files.createLink(Files.java:1086)
        at 
org.apache.hadoop.ozone.om.snapshot.OmSnapshotUtils.linkFiles(OmSnapshotUtils.java:169)
        at 
org.apache.hadoop.ozone.om.OzoneManager.moveCheckpointFiles(OzoneManager.java:3816)
        at 
org.apache.hadoop.ozone.om.OzoneManager.replaceOMDBWithCheckpoint(OzoneManager.java:3796)
        at 
org.apache.hadoop.ozone.om.OzoneManager.installCheckpoint(OzoneManager.java:3671)
        at 
org.apache.hadoop.ozone.om.OzoneManager.installCheckpoint(OzoneManager.java:3606)
        at 
org.apache.hadoop.ozone.om.OzoneManager.installSnapshotFromLeader(OzoneManager.java:3583)
        at 
org.apache.hadoop.ozone.om.ratis.OzoneManagerStateMachine.lambda$6(OzoneManagerStateMachine.java:513)
        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:750)
{noformat}





--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to