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 md...@apache.org on 2017/03/01 17:25:58 UTC

svn commit: r1784996 - in /jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak: backup/impl/ segment/

Author: mduerig
Date: Wed Mar  1 17:25:58 2017
New Revision: 1784996

URL: http://svn.apache.org/viewvc?rev=1784996&view=rev
Log:
OAK-3690: Decouple SegmentBufferWriter from SegmentStore
Replace SegmentTracker.getSegmentCounter with SegmentIdProvider.getIdSegmentCount

Modified:
    jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/backup/impl/FileStoreBackupImpl.java
    jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/backup/impl/FileStoreRestoreImpl.java
    jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentBufferWriter.java
    jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentBufferWriterPool.java
    jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentTracker.java
    jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentWriterBuilder.java

Modified: jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/backup/impl/FileStoreBackupImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/backup/impl/FileStoreBackupImpl.java?rev=1784996&r1=1784995&r2=1784996&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/backup/impl/FileStoreBackupImpl.java (original)
+++ jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/backup/impl/FileStoreBackupImpl.java Wed Mar  1 17:25:58 2017
@@ -70,7 +70,6 @@ public class FileStoreBackupImpl impleme
             SegmentBufferWriter bufferWriter = new SegmentBufferWriter(
                     backup,
                     backup.getSegmentIdProvider(),
-                    backup.getTracker().getSegmentCounter(),
                     backup.getReader(),
                     "b",
                     gen

Modified: jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/backup/impl/FileStoreRestoreImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/backup/impl/FileStoreRestoreImpl.java?rev=1784996&r1=1784995&r2=1784996&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/backup/impl/FileStoreRestoreImpl.java (original)
+++ jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/backup/impl/FileStoreRestoreImpl.java Wed Mar  1 17:25:58 2017
@@ -64,7 +64,6 @@ public class FileStoreRestoreImpl implem
             SegmentBufferWriter bufferWriter = new SegmentBufferWriter(
                     store,
                     store.getSegmentIdProvider(),
-                    store.getTracker().getSegmentCounter(),
                     store.getReader(),
                     "r",
                     gen

Modified: jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentBufferWriter.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentBufferWriter.java?rev=1784996&r1=1784995&r2=1784996&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentBufferWriter.java (original)
+++ jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentBufferWriter.java Wed Mar  1 17:25:58 2017
@@ -43,7 +43,6 @@ import java.util.Set;
 import javax.annotation.CheckForNull;
 import javax.annotation.Nonnull;
 
-import com.google.common.base.Supplier;
 import org.apache.jackrabbit.oak.segment.RecordNumbers.Entry;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -111,9 +110,6 @@ public class SegmentBufferWriter impleme
     private final SegmentIdProvider idProvider;
 
     @Nonnull
-    private final Supplier<Integer> segmentCounter;
-
-    @Nonnull
     private final SegmentReader reader;
 
     /**
@@ -154,13 +150,11 @@ public class SegmentBufferWriter impleme
 
     public SegmentBufferWriter(@Nonnull SegmentStore store,
                                @Nonnull SegmentIdProvider idProvider,
-                               @Nonnull Supplier<Integer> segmentCounter,
                                @Nonnull SegmentReader reader,
                                @CheckForNull String wid,
                                int generation) {
         this.store = checkNotNull(store);
         this.idProvider = checkNotNull(idProvider);
-        this.segmentCounter = checkNotNull(segmentCounter);
         this.reader = checkNotNull(reader);
         this.wid = (wid == null
                 ? "w-" + identityHashCode(this)
@@ -213,7 +207,7 @@ public class SegmentBufferWriter impleme
 
         String metaInfo =
             "{\"wid\":\"" + wid + '"' +
-            ",\"sno\":" + segmentCounter.get() +
+            ",\"sno\":" + idProvider.getSegmentIdCount() +
             ",\"t\":" + currentTimeMillis() + "}";
         try {
             segment = new Segment(idProvider, reader, buffer, recordNumbers, segmentReferences, metaInfo);

Modified: jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentBufferWriterPool.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentBufferWriterPool.java?rev=1784996&r1=1784995&r2=1784996&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentBufferWriterPool.java (original)
+++ jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentBufferWriterPool.java Wed Mar  1 17:25:58 2017
@@ -193,7 +193,6 @@ public class SegmentBufferWriterPool imp
                 writer = new SegmentBufferWriter(
                         store,
                         tracker,
-                        tracker.getSegmentCounter(),
                         reader,
                         getWriterId(wid),
                         gcGeneration.get()
@@ -203,7 +202,6 @@ public class SegmentBufferWriterPool imp
                 writer = new SegmentBufferWriter(
                         store,
                         tracker,
-                        tracker.getSegmentCounter(),
                         reader,
                         getWriterId(wid),
                         gcGeneration.get()

Modified: jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentTracker.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentTracker.java?rev=1784996&r1=1784995&r2=1784996&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentTracker.java (original)
+++ jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentTracker.java Wed Mar  1 17:25:58 2017
@@ -28,8 +28,6 @@ import java.util.concurrent.atomic.Atomi
 
 import javax.annotation.Nonnull;
 
-import com.google.common.base.Supplier;
-
 /**
  * Tracker of references to segment identifiers and segment instances
  * that are currently kept in memory and factory for creating {@link SegmentId}
@@ -80,19 +78,6 @@ public class SegmentTracker implements S
         }
     }
 
-    /**
-     * Number of segment tracked since this tracker was instantiated
-     * @return count
-     */
-    public Supplier<Integer> getSegmentCounter() {
-        return new Supplier<Integer>() {
-            @Override
-            public Integer get() {
-                return segmentCounter.get();
-            }
-        };
-    }
-
     @Override
     public int getSegmentIdCount() {
         return segmentCounter.get();

Modified: jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentWriterBuilder.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentWriterBuilder.java?rev=1784996&r1=1784995&r2=1784996&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentWriterBuilder.java (original)
+++ jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentWriterBuilder.java Wed Mar  1 17:25:58 2017
@@ -209,7 +209,6 @@ public final class SegmentWriterBuilder
             return new SegmentBufferWriter(
                     store,
                     store.getSegmentIdProvider(),
-                    store.getTracker().getSegmentCounter(),
                     store.getReader(),
                     name,
                     generation.get()
@@ -231,7 +230,6 @@ public final class SegmentWriterBuilder
             return new SegmentBufferWriter(
                     store,
                     store.getSegmentIdProvider(),
-                    store.getTracker().getSegmentCounter(),
                     store.getReader(),
                     name,
                     generation.get()