Class AbstractCommitLogSegmentManager

    • Method Detail

      • createSegment

        protected CommitLogSegment createSegment()
        Hook to allow segment managers to track state surrounding creation of new segments. Onl perform as task submit to segment manager so it's performed on segment management thread.
      • onDiskSize

        public long onDiskSize()
        Returns:
        the space (in bytes) used by all segment files.
      • stopUnsafe

        public void stopUnsafe​(boolean deleteSegments)
        Stops CL, for testing purposes. DO NOT USE THIS OUTSIDE OF TESTS. Only call this after the AbstractCommitLogService is shut down.
      • awaitManagementTasksCompletion

        public void awaitManagementTasksCompletion()
        To be used by tests only. Not safe if mutation slots are being allocated concurrently.
      • shutdown

        public void shutdown()
        Initiates the shutdown process for the management thread.
      • awaitTermination

        public boolean awaitTermination​(long timeout,
                                        java.util.concurrent.TimeUnit units)
                                 throws java.lang.InterruptedException
        Returns when the management thread terminates.
        Throws:
        java.lang.InterruptedException
      • getActiveSegments

        public java.util.Collection<CommitLogSegment> getActiveSegments()
        Returns:
        a read-only collection of the active commit log segments
      • sync

        public void sync​(boolean flush)
                  throws java.io.IOException
        Requests commit log files sync themselves, if needed. This may or may not involve flushing to disk.
        Parameters:
        flush - Request that the sync operation flush the file to disk.
        Throws:
        java.io.IOException