[
https://issues.apache.org/jira/browse/IGNITE-9731?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16631543#comment-16631543
]
ASF GitHub Bot commented on IGNITE-9731:
----------------------------------------
GitHub user akalash opened a pull request:
https://github.com/apache/ignite/pull/4863
IGNITE-9731 hold segmentId on constructor of FileHandle
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/gridgain/apache-ignite ignite-9731
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/ignite/pull/4863.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 #4863
----
commit e78214306c02a969ecc9bd250895b89f889abbb5
Author: Anton Kalashnikov <kaa.dev@...>
Date: 2018-09-28T08:43:41Z
IGNITE-9731 hold segmentId on constructor of FileHandle
----
> NPE is possible during WAL flushing
> -----------------------------------
>
> Key: IGNITE-9731
> URL: https://issues.apache.org/jira/browse/IGNITE-9731
> Project: Ignite
> Issue Type: Bug
> Reporter: Andrey Kuznetsov
> Assignee: Anton Kalashnikov
> Priority: Critical
> Fix For: 2.7
>
> Attachments: WalRolloverRecordLoggingTest.java
>
>
> {{FileWriteAheadLogManager.flush()}} seems to be not thread-safe anymore in
> master branch. The test attached produces the following NPE:
> {noformat}
> java.lang.NullPointerException
> at
> org.apache.ignite.internal.processors.cache.persistence.wal.FileWriteAheadLogManager$FileHandle.getSegmentId(FileWriteAheadLogManager.java:2371)
> at
> org.apache.ignite.internal.processors.cache.persistence.wal.FileWriteAheadLogManager$FileWriteHandle.needFsync(FileWriteAheadLogManager.java:2642)
> at
> org.apache.ignite.internal.processors.cache.persistence.wal.FileWriteAheadLogManager$FileWriteHandle.fsync(FileWriteAheadLogManager.java:2668)
> at
> org.apache.ignite.internal.processors.cache.persistence.wal.FileWriteAheadLogManager$FileWriteHandle.access$1900(FileWriteAheadLogManager.java:2445)
> at
> org.apache.ignite.internal.processors.cache.persistence.wal.FileWriteAheadLogManager.flush(FileWriteAheadLogManager.java:866)
> at
> org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager$Checkpointer.markCheckpointBegin(GridCacheDatabaseSharedManager.java:3633)
> at
> org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager$Checkpointer.doCheckpoint(GridCacheDatabaseSharedManager.java:3126)
> at
> org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager$Checkpointer.body(GridCacheDatabaseSharedManager.java:3025)
> at
> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:120)
> at java.lang.Thread.run(Thread.java:748)
> {noformat}
> This could be possibly brought by commit [1].
> [1]
> https://github.com/apache/ignite/commit/2f72fe758d4256c4eb4610e5922ad3d174b43dc5
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)