Class AbstractCommitLogService

java.lang.Object
org.apache.cassandra.db.commitlog.AbstractCommitLogService
Direct Known Subclasses:
GroupCommitLogService

public abstract class AbstractCommitLogService extends Object
  • Field Details

    • lastSyncedAt

      protected volatile long lastSyncedAt
    • pending

      protected final AtomicLong pending
    • syncComplete

      protected final WaitQueue syncComplete
    • haveWork

      protected final Semaphore haveWork
  • Method Details

    • finishWriteFor

      public void finishWriteFor(CommitLogSegment.Allocation alloc)
      Block for @param alloc to be sync'd as necessary, and handle bookkeeping
    • maybeWaitForSync

      protected abstract void maybeWaitForSync(CommitLogSegment.Allocation alloc)
    • shutdown

      public void shutdown()
    • syncBlocking

      public void syncBlocking()
      Request sync and wait until the current state is synced. Note: If a sync is in progress at the time of this request, the call will return after both it and a cycle initiated immediately afterwards complete.
    • awaitTermination

      public void awaitTermination() throws InterruptedException
      Throws:
      InterruptedException
    • getCompletedTasks

      public long getCompletedTasks()
    • getPendingTasks

      public long getPendingTasks()