[ 
https://issues.apache.org/jira/browse/IGNITE-8763?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16510784#comment-16510784
 ] 

ASF GitHub Bot commented on IGNITE-8763:
----------------------------------------

GitHub user alex-plekhanov opened a pull request:

    https://github.com/apache/ignite/pull/4178

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

    

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/alex-plekhanov/ignite ignite-8763

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/ignite/pull/4178.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #4178
    
----
commit 18d8fb7148c1197402e0e89e9b7797a1ee38b492
Author: Aleksey Plekhanov <plehanov.alex@...>
Date:   2018-06-09T15:05:28Z

    IGNITE-8763 Reproducer

commit c55c74425e9af807d2c521778e1185fc1e726520
Author: Aleksey Plekhanov <plehanov.alex@...>
Date:   2018-06-09T15:41:54Z

    IGNITE-8763 Fix

commit 3cf690ffe5e59ae8e9bb54b7266e33a35e7ada89
Author: Aleksey Plekhanov <plehanov.alex@...>
Date:   2018-06-09T16:16:56Z

    IGNITE-8763 Fix 2

----


> 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: Bug
>    Affects Versions: 2.5
>            Reporter: Andrey Gura
>            Assignee: Aleksey Plekhanov
>            Priority: Major
>             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)

Reply via email to