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/07/05 07:10:26 UTC

svn commit: r1800847 - /jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentBufferWriter.java

Author: mduerig
Date: Wed Jul  5 07:10:26 2017
New Revision: 1800847

URL: http://svn.apache.org/viewvc?rev=1800847&view=rev
Log:
OAK-3349: Partial compaction
Remove now obsolete check for back references

Modified:
    jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentBufferWriter.java

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=1800847&r1=1800846&r2=1800847&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 Jul  5 07:10:26 2017
@@ -68,14 +68,6 @@ public class SegmentBufferWriter impleme
 
     private static final Logger LOG = LoggerFactory.getLogger(SegmentBufferWriter.class);
 
-    /**
-     * Enable an extra check logging warnings should this writer create segments
-     * referencing segments from an older generation.
-     *
-     * @see #checkGCGeneration(SegmentId)
-     */
-    private static final boolean ENABLE_GENERATION_CHECK = Boolean.getBoolean("enable-generation-check");
-
     private static final class Statistics {
 
         int segmentIdCount;
@@ -241,7 +233,6 @@ public class SegmentBufferWriter impleme
         checkNotNull(recordId);
         checkState(segmentReferences.size() + 1 < 0xffff,
                 "Segment cannot have more than 0xffff references");
-        checkGCGeneration(recordId.getSegmentId());
 
         writeShort(toShort(writeSegmentIdReference(recordId.getSegmentId())));
         writeInt(recordId.getRecordNumber());
@@ -263,29 +254,6 @@ public class SegmentBufferWriter impleme
         return segmentReferences.addOrReference(id);
     }
 
-    /**
-     * Check that the generation of a segment matches the generation of this writer and logs
-     * a warning otherwise.
-     * This check is skipped if the {@link #ENABLE_GENERATION_CHECK} is not set.
-     *
-     * @param id  id of the segment to check
-     */
-    private void checkGCGeneration(SegmentId id) {
-        if (ENABLE_GENERATION_CHECK) {
-            try {
-                if (isDataSegmentId(id.getLeastSignificantBits())) {
-                    if (id.getGcGeneration() < generation) {
-                        LOG.warn("Detected reference from {} to segment {} from a previous gc generation.",
-                                info(this.segment), info(id.getSegment()), new Exception());
-                    }
-                }
-            } catch (SegmentNotFoundException snfe) {
-                LOG.warn("Detected reference from {} to non existing segment {}",
-                        info(this.segment), id, snfe);
-            }
-        }
-    }
-
     private static String info(Segment segment) {
         String info = segment.getSegmentId().toString();
         if (isDataSegmentId(segment.getSegmentId().getLeastSignificantBits())) {