Author: tomekr
Date: Tue May 28 10:16:56 2019
New Revision: 1860236

URL: http://svn.apache.org/viewvc?rev=1860236&view=rev
Log:
OAK-8357: Support the truncate operation for the GCJournalFile

Modified:
    
jackrabbit/oak/trunk/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/AzureGCJournalFile.java
    
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/LocalGCJournalFile.java
    
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/spi/persistence/GCJournalFile.java

Modified: 
jackrabbit/oak/trunk/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/AzureGCJournalFile.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/AzureGCJournalFile.java?rev=1860236&r1=1860235&r2=1860236&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/AzureGCJournalFile.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/AzureGCJournalFile.java
 Tue May 28 10:16:56 2019
@@ -61,4 +61,15 @@ public class AzureGCJournalFile implemen
             throw new IOException(e);
         }
     }
+
+    @Override
+    public void truncate() throws IOException {
+        try {
+            if (gcJournal.exists()) {
+                gcJournal.delete();
+            }
+        } catch (StorageException e) {
+            throw new IOException(e);
+        }
+    }
 }

Modified: 
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/LocalGCJournalFile.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/LocalGCJournalFile.java?rev=1860236&r1=1860235&r2=1860236&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/LocalGCJournalFile.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/LocalGCJournalFile.java
 Tue May 28 10:16:56 2019
@@ -61,4 +61,9 @@ public class LocalGCJournalFile implemen
         }
         return new ArrayList<String>();
     }
+
+    @Override
+    public void truncate() throws IOException {
+        file.delete();
+    }
 }

Modified: 
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/spi/persistence/GCJournalFile.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/spi/persistence/GCJournalFile.java?rev=1860236&r1=1860235&r2=1860236&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/spi/persistence/GCJournalFile.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/spi/persistence/GCJournalFile.java
 Tue May 28 10:16:56 2019
@@ -47,4 +47,8 @@ public interface GCJournalFile {
      */
     List<String> readLines() throws IOException;
 
+    /**
+     * Removes the content of the gc.log
+     */
+    void truncate() throws IOException;
 }


Reply via email to