You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by "Andrey Gura (JIRA)" <ji...@apache.org> on 2018/06/09 10:58:00 UTC

[jira] [Created] (IGNITE-8763) java.nio.file.AccessDeniedException is not handled with default failure handler

Andrey Gura created IGNITE-8763:
-----------------------------------

             Summary: java.nio.file.AccessDeniedException is not handled with default failure handler
                 Key: IGNITE-8763
                 URL: https://issues.apache.org/jira/browse/IGNITE-8763
             Project: Ignite
          Issue Type: Improvement
    Affects Versions: 2.5
            Reporter: Andrey Gura
             Fix For: 2.6


java.nio.file.AccessDeniedException is not handled with default failure handler

1. Start cluster(4 nodes).
2. Upload some data.
3. Make files in metastore read only.
4. Deactivate grid.
5. Activate grid.

On this step I see java.nio.file.AccessDeniedException:

{noformat}
[17:55:40,035][INFO][exchange-worker-#62][GridCacheDatabaseSharedManager] Read checkpoint status [startMarker=/storage/ssd/avolkov/tiden/iep_14-180517-175425/test_iep_14/ignite.server.1/work/db/node1/cp/1526568907638-46128a87-562a-45fc-8d73-75ccb1490d63-START.bin, endMarker=/storage/ssd/avolkov/tiden/iep_14-180517-175425/test_iep_14/ignite.server.1/work/db/node1/cp/1526568907638-46128a87-562a-45fc-8d73-75ccb1490d63-END.bin]
[17:55:40,037][SEVERE][exchange-worker-#62][GridDhtPartitionsExchangeFuture] Failed to activate node components [nodeId=bd7115d5-1f95-4673-9f40-47056b0b1a58, client=false, topVer=AffinityTopologyVersion [topVer=4, minorTopVer=5]]
class org.apache.ignite.IgniteCheckedException: Error while creating file page store [file=/storage/ssd/avolkov/tiden/iep_14-180517-175425/test_iep_14/ignite.server.1/work/db/node1/metastorage/part-0.bin]:
        at org.apache.ignite.internal.processors.cache.persistence.file.FileVersionCheckingFactory.createPageStore(FileVersionCheckingFactory.java:98)
        at org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.initDir(FilePageStoreManager.java:463)
        at org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.initializeForMetastorage(FilePageStoreManager.java:234)
        at org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager.readCheckpointAndRestoreMemory(GridCacheDatabaseSharedManager.java:743)
        at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.onClusterStateChangeRequest(GridDhtPartitionsExchangeFuture.java:896)
        at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeFuture.java:643)
        at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body0(GridCachePartitionExchangeManager.java:2419)
        at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:2299)
        at org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110)
        at java.lang.Thread.run(Thread.java:748)
Caused by: java.nio.file.AccessDeniedException: /storage/ssd/avolkov/tiden/iep_14-180517-175425/test_iep_14/ignite.server.1/work/db/node1/metastorage/part-0.bin
        at sun.nio.fs.UnixException.translateToIOException(UnixException.java:84)
        at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
        at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
        at sun.nio.fs.UnixFileSystemProvider.newAsynchronousFileChannel(UnixFileSystemProvider.java:196)
        at java.nio.channels.AsynchronousFileChannel.open(AsynchronousFileChannel.java:248)
        at java.nio.channels.AsynchronousFileChannel.open(AsynchronousFileChannel.java:301)
        at org.apache.ignite.internal.processors.cache.persistence.file.AsyncFileIO.<init>(AsyncFileIO.java:57)
        at org.apache.ignite.internal.processors.cache.persistence.file.AsyncFileIOFactory.create(AsyncFileIOFactory.java:53)
        at org.apache.ignite.internal.processors.cache.persistence.file.AsyncFileIOFactory.create(AsyncFileIOFactory.java:41)
        at org.apache.ignite.internal.processors.cache.persistence.file.FileVersionCheckingFactory.createPageStore(FileVersionCheckingFactory.java:78)
        ... 9 more
{noformat}

Situation led to NPE exception after AccessDeniedException looks like this:

1. AccessDeniedException was thrown in ExchangeFuture right before affinity initialization so affinity was never initialized.
 2.   After that node receives PartitionSingleMessage and tries to access affinity information. Null is returned because of exception in step #1.





--
This message was sent by Atlassian JIRA
(v7.6.3#76005)