org.apache.cassandra.db.commitlog

## Class AbstractCommitLogService

- java.lang.Object
- - org.apache.cassandra.db.commitlog.AbstractCommitLogService

-     public abstract class AbstractCommitLogService
      extends java.lang.Object

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected long` | `lastSyncedAt`
    `protected java.util.concurrent.atomic.AtomicLong` | `pending`
    `protected WaitQueue` | `syncComplete`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `awaitTermination()`
    `void` | `finishWriteFor(CommitLogSegment.Allocation alloc)` Block for @param alloc to be sync'd as necessary, and handle bookkeeping
    `long` | `getCompletedTasks()`
    `long` | `getPendingTasks()`
    `protected abstract void` | `maybeWaitForSync(CommitLogSegment.Allocation alloc)`
    `void` | `shutdown()`
    `void` | `syncBlocking()` Request sync and wait until the current state is synced.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### lastSyncedAt

          protected volatile long lastSyncedAt

    - #### pending

          protected final java.util.concurrent.atomic.AtomicLong pending

    - #### syncComplete

          protected final WaitQueue syncComplete

  - ### Method Detail

    - #### 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 java.lang.InterruptedException

      Throws:
        `java.lang.InterruptedException`

    - #### getCompletedTasks

          public long getCompletedTasks()

    - #### getPendingTasks

          public long getPendingTasks()

Copyright © 2018 The Apache Software Foundation