Repository: ignite Updated Branches: refs/heads/master 22040a3cb -> 7ca60b05a
IGNITE-8453 FileDecompressor may access HashMap without proper synchronization Signed-off-by: Andrey Gura <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/7ca60b05 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/7ca60b05 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/7ca60b05 Branch: refs/heads/master Commit: 7ca60b05ab5c8b899c203aba629b8df33f9a8e7b Parents: 22040a3 Author: Ivan Rakov <[email protected]> Authored: Tue May 8 19:23:42 2018 +0300 Committer: Andrey Gura <[email protected]> Committed: Tue May 8 19:23:42 2018 +0300 ---------------------------------------------------------------------- .../cache/persistence/wal/FileWriteAheadLogManager.java | 4 +++- .../cache/persistence/wal/FsyncModeFileWriteAheadLogManager.java | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/7ca60b05/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java index 6ac102f..8755e1b 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java @@ -2111,7 +2111,9 @@ public class FileWriteAheadLogManager extends GridCacheSharedManagerAdapter impl IgniteCheckedException e = new IgniteCheckedException("Error during WAL segment " + "decompression [segmentIdx=" + segmentToDecompress + "]", t); - decompressionFutures.remove(segmentToDecompress).onDone(e); + synchronized (this) { + decompressionFutures.remove(segmentToDecompress).onDone(e); + } } } } http://git-wip-us.apache.org/repos/asf/ignite/blob/7ca60b05/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FsyncModeFileWriteAheadLogManager.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FsyncModeFileWriteAheadLogManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FsyncModeFileWriteAheadLogManager.java index cf643fd..c446f7f 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FsyncModeFileWriteAheadLogManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FsyncModeFileWriteAheadLogManager.java @@ -1919,7 +1919,9 @@ public class FsyncModeFileWriteAheadLogManager extends GridCacheSharedManagerAda IgniteCheckedException e = new IgniteCheckedException("Error during WAL segment " + "decompression [segmentIdx=" + segmentToDecompress + ']', t); - decompressionFutures.remove(segmentToDecompress).onDone(e); + synchronized (this) { + decompressionFutures.remove(segmentToDecompress).onDone(e); + } } } }
