Author: frm
Date: Mon Oct 30 15:37:13 2017
New Revision: 1813782

URL: http://svn.apache.org/viewvc?rev=1813782&view=rev
Log:
OAK-6829 - Ensure proper visibility of transient state in FileStore and 
TarRevisions

Modified:
    
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/FileStore.java
    
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/TarRevisions.java

Modified: 
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/FileStore.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/FileStore.java?rev=1813782&r1=1813781&r2=1813782&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/FileStore.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/FileStore.java
 Mon Oct 30 15:37:13 2017
@@ -131,7 +131,7 @@ public class FileStore extends AbstractF
     @Nonnull
     private final FileLock lock;
 
-    private TarRevisions revisions;
+    private volatile TarRevisions revisions;
 
     /**
      * Scheduler for running <em>short</em> background operations

Modified: 
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/TarRevisions.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/TarRevisions.java?rev=1813782&r1=1813781&r2=1813782&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/TarRevisions.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/TarRevisions.java
 Mon Oct 30 15:37:13 2017
@@ -82,7 +82,7 @@ public class TarRevisions implements Rev
      * The journal file. It is protected by {@link #journalFileLock}. It 
becomes
      * {@code null} after it's closed.
      */
-    private RandomAccessFile journalFile;
+    private volatile RandomAccessFile journalFile;
 
     /**
      * The persisted head of the root journal, used to determine whether the


Reply via email to