You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by fr...@apache.org on 2016/02/11 14:19:28 UTC

svn commit: r1729821 - in /jackrabbit/oak/trunk: oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStore.java oak-tarmk-standby/src/main/java/org/apache/jackrabbit/oak/plugins/segment/standby/store/StandbyStore.java

Author: frm
Date: Thu Feb 11 13:19:27 2016
New Revision: 1729821

URL: http://svn.apache.org/viewvc?rev=1729821&view=rev
Log:
OAK-4004 - The cold standby segment store should delete the files marked for deletion

Modified:
    jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStore.java
    jackrabbit/oak/trunk/oak-tarmk-standby/src/main/java/org/apache/jackrabbit/oak/plugins/segment/standby/store/StandbyStore.java

Modified: jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStore.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStore.java?rev=1729821&r1=1729820&r2=1729821&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStore.java (original)
+++ jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStore.java Thu Feb 11 13:19:27 2016
@@ -794,10 +794,13 @@ public class FileStore implements Segmen
     }
 
     public void flush() throws IOException {
+        flush(cleanupNeeded.getAndSet(false));
+    }
+
+    public void flush(boolean cleanup) throws IOException {
         synchronized (persistedHead) {
             RecordId before = persistedHead.get();
             RecordId after = head.get();
-            boolean cleanup = cleanupNeeded.getAndSet(false);
 
             if (cleanup || !after.equals(before)) {
                 // needs to happen outside the synchronization block below to

Modified: jackrabbit/oak/trunk/oak-tarmk-standby/src/main/java/org/apache/jackrabbit/oak/plugins/segment/standby/store/StandbyStore.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-tarmk-standby/src/main/java/org/apache/jackrabbit/oak/plugins/segment/standby/store/StandbyStore.java?rev=1729821&r1=1729820&r2=1729821&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-tarmk-standby/src/main/java/org/apache/jackrabbit/oak/plugins/segment/standby/store/StandbyStore.java (original)
+++ jackrabbit/oak/trunk/oak-tarmk-standby/src/main/java/org/apache/jackrabbit/oak/plugins/segment/standby/store/StandbyStore.java Thu Feb 11 13:19:27 2016
@@ -246,7 +246,7 @@ public class StandbyStore implements Seg
         if (delegate instanceof FileStore) {
             try {
                 delegate.getTracker().getWriter().dropCache();
-                ((FileStore) delegate).cleanup();
+                ((FileStore) delegate).flush(true);
             } catch (IOException e) {
                 log.error("Error running cleanup", e);
             }