Class Compact.Builder
java.lang.Object
org.apache.jackrabbit.oak.segment.tool.Compact.Builder
- Enclosing class:
- Compact
Collect options for the
Compact
command.-
Method Summary
Modifier and TypeMethodDescriptionbuild()
Create an executable version of theCompact
command.withCompactorType
(SegmentGCOptions.CompactorType compactorType) The compactor type to be used by compaction.withConcurrency
(int concurrency) The number of threads to be used for compaction.withForce
(boolean force) Whether to fail if run on an older version of the store of force upgrading its format.withGCLogInterval
(long gcLogInterval) The number of nodes after which an update about the compaction process is logged.withGCType
(SegmentGCOptions.GCType gcType) The garbage collection type used.Whether to use memory mapped access or file access.Which operating system the code is running on.The path to an existing segment store.withSegmentCacheSize
(int segmentCacheSize) The size of the segment cache in MB.
-
Method Details
-
withPath
The path to an existing segment store. This parameter is required.- Parameters:
path
- the path to an existing segment store.- Returns:
- this builder.
-
withMmap
Whether to use memory mapped access or file access.- Parameters:
mmap
-true
for memory mapped access,false
for file accessnull
to determine the access mode from the system architecture: memory mapped on 64 bit systems, file access on 32 bit systems.- Returns:
- this builder.
-
withOs
Which operating system the code is running on.- Parameters:
os
- The operating system as returned by the "os.name" standard system property.- Returns:
- this builder.
-
withForce
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
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:
IllegalArgumentException
- ifsegmentCacheSize
is not a positive integer.
-
withGCLogInterval
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
The garbage collection type used. If not specified it defaults to full compaction- Parameters:
gcType
- the GC type- Returns:
- this builder
-
withCompactorType
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
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
-
build
Create an executable version of theCompact
command.- Returns:
- an instance of
Runnable
.
-