Class AzureCompact.Builder
- java.lang.Object
-
- org.apache.jackrabbit.oak.segment.azure.tool.AzureCompact.Builder
-
- Enclosing class:
- AzureCompact
public static class AzureCompact.Builder extends java.lang.Object
Collect options for theCompact
command.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AzureCompact
build()
Create an executable version of theCompact
command.AzureCompact.Builder
withCompactorType(SegmentGCOptions.CompactorType compactorType)
The compactor type to be used by compaction.AzureCompact.Builder
withConcurrency(int concurrency)
The number of threads to be used for compaction.AzureCompact.Builder
withForce(boolean force)
Whether to fail if run on an older version of the store of force upgrading its format.AzureCompact.Builder
withGCLogInterval(long gcLogInterval)
The number of nodes after which an update about the compaction process is logged.AzureCompact.Builder
withGCType(SegmentGCOptions.GCType gcType)
The garbage collection type used.AzureCompact.Builder
withPath(java.lang.String path)
The path (URI) to an existing segment store.AzureCompact.Builder
withPersistentCachePath(java.lang.String persistentCachePath)
The path where segments in the persistent cache will be stored.AzureCompact.Builder
withPersistentCacheSizeGb(java.lang.Integer persistentCacheSizeGb)
The maximum size in GB of the persistent disk cache.AzureCompact.Builder
withSegmentCacheSize(int segmentCacheSize)
The size of the segment cache in MB.AzureCompact.Builder
withTargetPath(java.lang.String targetPath)
The path (URI) to the target segment store.
-
-
-
Method Detail
-
withPath
public AzureCompact.Builder withPath(java.lang.String path)
The path (URI) to an existing segment store. This parameter is required.- Parameters:
path
- the path to an existing segment store.- Returns:
- this builder.
-
withTargetPath
public AzureCompact.Builder withTargetPath(java.lang.String targetPath)
The path (URI) to the target segment store.- Parameters:
targetPath
- the path to the target segment store.- Returns:
- this builder
-
withForce
public AzureCompact.Builder withForce(boolean force)
Whether to fail if run on an older version of the store of force upgrading its format.- Parameters:
force
- upgrade ifftrue
- Returns:
- this builder.
-
withSegmentCacheSize
public AzureCompact.Builder withSegmentCacheSize(int segmentCacheSize)
The size of the segment cache in MB. The default ofSegmentCache.DEFAULT_SEGMENT_CACHE_MB
when this method is not invoked.- Parameters:
segmentCacheSize
- cache size in MB- Returns:
- this builder
- Throws:
java.lang.IllegalArgumentException
- ifsegmentCacheSize
is not a positive integer.
-
withGCLogInterval
public AzureCompact.Builder withGCLogInterval(long gcLogInterval)
The number of nodes after which an update about the compaction process is logged. Set to a negative number to disable progress logging. If not specified, it defaults to 150,000 nodes.- Parameters:
gcLogInterval
- The log interval.- Returns:
- this builder.
-
withGCType
public AzureCompact.Builder withGCType(SegmentGCOptions.GCType gcType)
The garbage collection type used. If not specified it defaults to full compaction- Parameters:
gcType
- the GC type- Returns:
- this builder
-
withCompactorType
public AzureCompact.Builder withCompactorType(SegmentGCOptions.CompactorType compactorType)
The compactor type to be used by compaction. If not specified it defaults to "parallel" compactor- Parameters:
compactorType
- the compactor type- Returns:
- this builder
-
withConcurrency
public AzureCompact.Builder withConcurrency(int concurrency)
The number of threads to be used for compaction. This only applies to the "parallel" compactor- Parameters:
concurrency
- the number of threads- Returns:
- this builder
-
withPersistentCachePath
public AzureCompact.Builder withPersistentCachePath(java.lang.String persistentCachePath)
The path where segments in the persistent cache will be stored.- Parameters:
persistentCachePath
- the path to the persistent cache.- Returns:
- this builder
-
withPersistentCacheSizeGb
public AzureCompact.Builder withPersistentCacheSizeGb(java.lang.Integer persistentCacheSizeGb)
The maximum size in GB of the persistent disk cache.- Parameters:
persistentCacheSizeGb
- the maximum size of the persistent cache.- Returns:
- this builder
-
build
public AzureCompact build()
Create an executable version of theCompact
command.- Returns:
- an instance of
Runnable
.
-
-