This is an automated email from the ASF dual-hosted git repository. daim pushed a commit to branch OAK-10199 in repository https://gitbox.apache.org/repos/asf/jackrabbit-oak.git
commit c75fc867adcbcee7eeaa0f4e732fea6035c06ab3 Author: Rishabh Kumar <d...@adobe.com> AuthorDate: Wed May 31 14:33:10 2023 +0530 OAK-10199 : fixed code smells as suggested by Sonar --- .../oak/plugins/document/VersionGCRecommendations.java | 13 +++++++------ .../oak/plugins/document/VersionGarbageCollector.java | 15 +++++++-------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/VersionGCRecommendations.java b/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/VersionGCRecommendations.java index f04b56fc52..4584d925c0 100644 --- a/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/VersionGCRecommendations.java +++ b/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/VersionGCRecommendations.java @@ -22,7 +22,6 @@ import java.util.HashMap; import java.util.Map; import java.util.concurrent.TimeUnit; -import com.google.common.collect.ImmutableMap; import org.apache.jackrabbit.oak.plugins.document.VersionGarbageCollector.VersionGCStats; import org.apache.jackrabbit.oak.plugins.document.util.TimeInterval; import org.apache.jackrabbit.oak.plugins.document.util.Utils; @@ -31,6 +30,8 @@ import org.apache.jackrabbit.oak.stats.Clock; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import static java.lang.Long.MAX_VALUE; +import static java.util.Map.of; import static org.apache.jackrabbit.oak.plugins.document.VersionGarbageCollector.SETTINGS_COLLECTION_DETAILED_GC_TIMESTAMP_PROP; import static org.apache.jackrabbit.oak.plugins.document.VersionGarbageCollector.SETTINGS_COLLECTION_OLDEST_TIMESTAMP_PROP; @@ -120,8 +121,8 @@ public class VersionGCRecommendations { oldestPossibleFullGC = detailedGCTimestamp - 1; } - TimeInterval scopeFullGC = new TimeInterval(oldestPossibleFullGC, Long.MAX_VALUE); - scopeFullGC = scopeFullGC.notLaterThan(keep.fromMs); + TimeInterval fullGCTimeInternal = new TimeInterval(oldestPossibleFullGC, MAX_VALUE); + fullGCTimeInternal = fullGCTimeInternal.notLaterThan(keep.fromMs); suggestedIntervalMs = settings.get(VersionGarbageCollector.SETTINGS_COLLECTION_REC_INTERVAL_PROP); if (suggestedIntervalMs > 0) { @@ -181,7 +182,7 @@ public class VersionGCRecommendations { this.precisionMs = options.precisionMs; this.ignoreDueToCheckPoint = ignoreDueToCheckPoint; this.scope = scope; - this.scopeFullGC = scopeFullGC; + this.scopeFullGC = fullGCTimeInternal; this.scopeIsComplete = scope.toMs >= keep.fromMs; this.maxCollect = collectLimit; this.suggestedIntervalMs = suggestedIntervalMs; @@ -205,7 +206,7 @@ public class VersionGCRecommendations { stats.needRepeat = true; } else if (!stats.canceled && !stats.ignoredGCDueToCheckPoint) { // success, we would not expect to encounter revisions older than this in the future - setLongSetting(ImmutableMap.of(SETTINGS_COLLECTION_OLDEST_TIMESTAMP_PROP, scope.toMs, + setLongSetting(of(SETTINGS_COLLECTION_OLDEST_TIMESTAMP_PROP, scope.toMs, SETTINGS_COLLECTION_DETAILED_GC_TIMESTAMP_PROP, stats.oldestModifiedGced)); int count = stats.deletedDocGCCount - stats.deletedLeafDocGCCount; @@ -254,7 +255,7 @@ public class VersionGCRecommendations { } private void setLongSetting(String propName, long val) { - setLongSetting(Map.of(propName, val)); + setLongSetting(of(propName, val)); } private void setLongSetting(final Map<String, Long> propValMap) { diff --git a/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/VersionGarbageCollector.java b/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/VersionGarbageCollector.java index 3f9cb23f9a..b562831e24 100644 --- a/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/VersionGarbageCollector.java +++ b/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/VersionGarbageCollector.java @@ -62,6 +62,7 @@ import static java.util.Collections.emptySet; import static java.util.Objects.requireNonNull; import static java.util.Optional.ofNullable; import static java.util.concurrent.TimeUnit.MILLISECONDS; +import static java.util.stream.Collectors.joining; import static org.apache.jackrabbit.guava.common.base.StandardSystemProperty.LINE_SEPARATOR; import static org.apache.jackrabbit.guava.common.collect.Iterables.all; import static org.apache.jackrabbit.guava.common.collect.Iterators.partition; @@ -604,7 +605,7 @@ public class VersionGarbageCollector { * @param headRevision the current head revision of node store */ private void collectDetailedGarbage(final GCPhases phases, final RevisionVector headRevision, final VersionGCRecommendations rec) - throws IOException, LimitExceededException { + throws IOException { int docsTraversed = 0; boolean foundDoc = true; long oldestModifiedGCed = rec.scopeFullGC.fromMs; @@ -647,11 +648,9 @@ public class VersionGarbageCollector { oldestModifiedGCed = modified; } - if (gc.hasGarbage()) { - if (phases.start(GCPhase.DETAILED_GC_CLEANUP)) { - gc.removeGarbage(phases.stats); - phases.stop(GCPhase.DETAILED_GC_CLEANUP); - } + if (gc.hasGarbage() && phases.start(GCPhase.DETAILED_GC_CLEANUP)) { + gc.removeGarbage(phases.stats); + phases.stop(GCPhase.DETAILED_GC_CLEANUP); } oldestModifiedGCed = modified == null ? fromModified : modified; @@ -861,8 +860,8 @@ public class VersionGarbageCollector { monitor.info("Proceeding to update [{}] documents", updateOpList.size()); if (log.isDebugEnabled()) { - String collect = updateOpList.stream().map(UpdateOp::getId).collect(Collectors.joining(",")); - log.trace("Performing batch update of documents with following id's. \n" + collect); + String collect = updateOpList.stream().map(UpdateOp::getId).collect(joining(",")); + log.debug("Performing batch update of documents with following id's [{}]", collect); } if (cancel.get()) {