Class Compact.Builder

  • Enclosing class:
    Compact

    public static class Compact.Builder
    extends java.lang.Object
    Collect options for the Compact command.
    • Method Detail

      • withPath

        public Compact.Builder withPath​(java.io.File path)
        The path to an existing segment store. This parameter is required.
        Parameters:
        path - the path to an existing segment store.
        Returns:
        this builder.
      • withMmap

        public Compact.Builder withMmap​(@Nullable
                                        @Nullable java.lang.Boolean mmap)
        Whether to use memory mapped access or file access.
        Parameters:
        mmap - true for memory mapped access, false for file access null 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

        public Compact.Builder withOs​(java.lang.String os)
        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

        public Compact.Builder withForce​(boolean force)
        Whether to fail if run on an older version of the store of force upgrading its format.
        Parameters:
        force - upgrade iff true
        Returns:
        this builder.
      • withSegmentCacheSize

        public Compact.Builder withSegmentCacheSize​(int segmentCacheSize)
        The size of the segment cache in MB. The default of SegmentCache.DEFAULT_SEGMENT_CACHE_MB when this method is not invoked.
        Parameters:
        segmentCacheSize - cache size in MB
        Returns:
        this builder
        Throws:
        java.lang.IllegalArgumentException - if segmentCacheSize is not a positive integer.
      • withGCLogInterval

        public Compact.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 Compact.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 Compact.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 Compact.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
      • build

        public Compact build()
        Create an executable version of the Compact command.
        Returns:
        an instance of Runnable.