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

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

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

Anton Vinogradov (Jira)
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)