Class

akka.persistence.journal.leveldb

SharedLeveldbStore

Related Doc: package leveldb

Permalink

class SharedLeveldbStore extends LeveldbStore

A LevelDB store that can be shared by multiple actor systems. The shared store must be set for each actor system that uses the store via SharedLeveldbJournal.setStore. The shared LevelDB store is for testing only.

Source
SharedLeveldbStore.scala
Linear Supertypes
LeveldbStore, LeveldbCompaction, CompactionSegmentManagement, ActorLogging, LeveldbRecovery, AsyncRecovery, LeveldbIdMapping, WriteJournalBase, Actor, AnyRef, Any
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SharedLeveldbStore
  2. LeveldbStore
  3. LeveldbCompaction
  4. CompactionSegmentManagement
  5. ActorLogging
  6. LeveldbRecovery
  7. AsyncRecovery
  8. LeveldbIdMapping
  9. WriteJournalBase
  10. Actor
  11. AnyRef
  12. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SharedLeveldbStore()

    Permalink
  2. new SharedLeveldbStore(cfg: Config)

    Permalink

Type Members

  1. type Receive = PartialFunction[Any, Unit]

    Permalink
    Definition Classes
    Actor

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from SharedLeveldbStore to any2stringadd[SharedLeveldbStore] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (SharedLeveldbStore, B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from SharedLeveldbStore to ArrowAssoc[SharedLeveldbStore] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  6. def addAllPersistenceIdsSubscriber(subscriber: ActorRef): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    LeveldbStore
  7. def addPersistenceIdSubscriber(subscriber: ActorRef, persistenceId: String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    LeveldbStore
  8. def addTagSubscriber(subscriber: ActorRef, tag: String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    LeveldbStore
  9. def allPersistenceIds: Set[String]

    Permalink
    Definition Classes
    LeveldbIdMapping
  10. def aroundPostRestart(reason: Throwable): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Actor
    Annotations
    @InternalApi()
  11. def aroundPostStop(): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Actor
    Annotations
    @InternalApi()
  12. def aroundPreRestart(reason: Throwable, message: Option[Any]): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Actor
    Annotations
    @InternalApi()
  13. def aroundPreStart(): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Actor
    Annotations
    @InternalApi()
  14. def aroundReceive(receive: actor.Actor.Receive, msg: Any): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Actor
    Annotations
    @InternalApi()
  15. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  16. def asyncDeleteMessagesTo(persistenceId: String, toSequenceNr: Long): Future[Unit]

    Permalink
    Definition Classes
    LeveldbStore
  17. def asyncReadHighestSequenceNr(persistenceId: String, fromSequenceNr: Long): Future[Long]

    Permalink

    Plugin API: asynchronously reads the highest stored sequence number for the given persistenceId.

    Plugin API: asynchronously reads the highest stored sequence number for the given persistenceId. The persistent actor will use the highest sequence number after recovery as the starting point when persisting new events. This sequence number is also used as toSequenceNr in subsequent call to #asyncReplayMessages unless the user has specified a lower toSequenceNr. Journal must maintain the highest sequence number and never decrease it.

    This call is protected with a circuit-breaker.

    Please also note that requests for the highest sequence number may be made concurrently to writes executing for the same persistenceId, in particular it is possible that a restarting actor tries to recover before its outstanding writes have completed.

    persistenceId

    persistent actor id.

    fromSequenceNr

    hint where to start searching for the highest sequence number. When a persistent actor is recovering this fromSequenceNr will be the sequence number of the used snapshot or 0L if no snapshot is used.

    Definition Classes
    LeveldbRecovery → AsyncRecovery
  18. def asyncReplayMessages(persistenceId: String, fromSequenceNr: Long, toSequenceNr: Long, max: Long)(replayCallback: (PersistentRepr) ⇒ Unit): Future[Unit]

    Permalink

    Plugin API: asynchronously replays persistent messages.

    Plugin API: asynchronously replays persistent messages. Implementations replay a message by calling replayCallback. The returned future must be completed when all messages (matching the sequence number bounds) have been replayed. The future must be completed with a failure if any of the persistent messages could not be replayed.

    The replayCallback must also be called with messages that have been marked as deleted. In this case a replayed message's deleted method must return true.

    The toSequenceNr is the lowest of what was returned by #asyncReadHighestSequenceNr and what the user specified as recovery akka.persistence.Recovery parameter. This does imply that this call is always preceded by reading the highest sequence number for the given persistenceId.

    This call is NOT protected with a circuit-breaker because it may take long time to replay all events. The plugin implementation itself must protect against an unresponsive backend store and make sure that the returned Future is completed with success or failure within reasonable time. It is not allowed to ignore completing the future.

    persistenceId

    persistent actor id.

    fromSequenceNr

    sequence number where replay should start (inclusive).

    toSequenceNr

    sequence number where replay should end (inclusive).

    max

    maximum number of messages to be replayed.

    Definition Classes
    LeveldbRecovery → AsyncRecovery
    See also

    AsyncWriteJournal

  19. def asyncReplayTaggedMessages(tag: String, fromSequenceNr: Long, toSequenceNr: Long, max: Long)(replayCallback: (ReplayedTaggedMessage) ⇒ Unit): Future[Unit]

    Permalink
    Definition Classes
    LeveldbRecovery
  20. def asyncWriteMessages(messages: Seq[AtomicWrite]): Future[Seq[Try[Unit]]]

    Permalink
    Definition Classes
    LeveldbStore
  21. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. val compactionIntervals: Map[String, Long]

    Permalink
    Definition Classes
    LeveldbStore → CompactionSegmentManagement
  23. def compactionLimit(persistenceId: String, toSeqNr: Long): Long

    Permalink
    Definition Classes
    CompactionSegmentManagement
  24. def compactionSegment(persistenceId: String, toSeqNr: Long): Long

    Permalink
    Definition Classes
    CompactionSegmentManagement
  25. val config: Config

    Permalink
    Definition Classes
    LeveldbStore
  26. implicit val context: ActorContext

    Permalink
    Definition Classes
    Actor
  27. def ensuring(cond: (SharedLeveldbStore) ⇒ Boolean, msg: ⇒ Any): SharedLeveldbStore

    Permalink
    Implicit information
    This member is added by an implicit conversion from SharedLeveldbStore to Ensuring[SharedLeveldbStore] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  28. def ensuring(cond: (SharedLeveldbStore) ⇒ Boolean): SharedLeveldbStore

    Permalink
    Implicit information
    This member is added by an implicit conversion from SharedLeveldbStore to Ensuring[SharedLeveldbStore] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  29. def ensuring(cond: Boolean, msg: ⇒ Any): SharedLeveldbStore

    Permalink
    Implicit information
    This member is added by an implicit conversion from SharedLeveldbStore to Ensuring[SharedLeveldbStore] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  30. def ensuring(cond: Boolean): SharedLeveldbStore

    Permalink
    Implicit information
    This member is added by an implicit conversion from SharedLeveldbStore to Ensuring[SharedLeveldbStore] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  31. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  32. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  33. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  34. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from SharedLeveldbStore to StringFormat[SharedLeveldbStore] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  35. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  36. def hasAllPersistenceIdsSubscribers: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    LeveldbStore
  37. def hasPersistenceIdSubscribers: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    LeveldbStore
  38. def hasTagSubscribers: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    LeveldbStore
  39. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  40. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  41. def isNewPersistenceId(id: String): Boolean

    Permalink
    Definition Classes
    LeveldbIdMapping
  42. var leveldb: DB

    Permalink
    Definition Classes
    LeveldbStore
  43. val leveldbDir: File

    Permalink
    Definition Classes
    LeveldbStore
  44. def leveldbFactory: DBFactory

    Permalink
    Definition Classes
    LeveldbStore
  45. val leveldbOptions: Options

    Permalink
    Definition Classes
    LeveldbStore
  46. def leveldbReadOptions: ReadOptions

    Permalink
    Definition Classes
    LeveldbStore
  47. def leveldbSnapshot(): ReadOptions

    Permalink
    Definition Classes
    LeveldbStore
  48. val leveldbWriteOptions: WriteOptions

    Permalink
    Definition Classes
    LeveldbStore
  49. def log: LoggingAdapter

    Permalink
    Definition Classes
    ActorLogging
  50. def mustCompact(persistenceId: String, toSeqNr: Long): Boolean

    Permalink
    Definition Classes
    CompactionSegmentManagement
  51. val nativeLeveldb: Boolean

    Permalink
    Definition Classes
    LeveldbStore
  52. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  53. def newPersistenceIdAdded(id: String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    LeveldbStore → LeveldbIdMapping
  54. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  55. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  56. def numericId(id: String): Int

    Permalink

    Get the mapped numeric id for the specified persistent actor id.

    Get the mapped numeric id for the specified persistent actor id. Creates and stores a new mapping if necessary.

    This method is thread safe and it is allowed to call it from a another thread than the actor's thread. That is necessary for Future composition, e.g. asyncReadHighestSequenceNr followed by asyncReplayMessages.

    Definition Classes
    LeveldbIdMapping
  57. val persistence: Persistence

    Permalink
    Definition Classes
    WriteJournalBase
  58. def persistentFromBytes(a: Array[Byte]): PersistentRepr

    Permalink
    Definition Classes
    LeveldbStore
  59. def persistentToBytes(p: PersistentRepr): Array[Byte]

    Permalink
    Definition Classes
    LeveldbStore
  60. def postRestart(reason: Throwable): Unit

    Permalink
    Definition Classes
    Actor
    Annotations
    @throws( classOf[java.lang.Exception] )
  61. def postStop(): Unit

    Permalink
    Definition Classes
    LeveldbStore → Actor
  62. def preRestart(reason: Throwable, message: Option[Any]): Unit

    Permalink
    Definition Classes
    Actor
    Annotations
    @throws( classOf[java.lang.Exception] )
  63. def preStart(): Unit

    Permalink
    Definition Classes
    LeveldbStore → LeveldbIdMapping → Actor
  64. def prepareConfig: Config

    Permalink
    Definition Classes
    SharedLeveldbStore → LeveldbStore
  65. def preparePersistentBatch(rb: Seq[PersistentEnvelope]): Seq[AtomicWrite]

    Permalink
    Attributes
    protected
    Definition Classes
    WriteJournalBase
  66. def readHighestSequenceNr(persistenceId: Int): Long

    Permalink
    Definition Classes
    LeveldbRecovery
  67. def receive: PartialFunction[Any, Unit]

    Permalink
    Definition Classes
    SharedLeveldbStore → Actor
  68. def receiveCompactionInternal: Receive

    Permalink
    Definition Classes
    LeveldbCompaction
  69. def removeSubscriber(subscriber: ActorRef): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    LeveldbStore
  70. def replayMessages(persistenceId: Int, fromSequenceNr: Long, toSequenceNr: Long, max: Long)(replayCallback: (PersistentRepr) ⇒ Unit): Unit

    Permalink
    Definition Classes
    LeveldbRecovery
  71. def replayTaggedMessages(tag: String, tagNid: Int, fromSequenceNr: Long, toSequenceNr: Long, max: Long)(replayCallback: (ReplayedTaggedMessage) ⇒ Unit): Unit

    Permalink
    Definition Classes
    LeveldbRecovery
  72. implicit final val self: ActorRef

    Permalink
    Definition Classes
    Actor
  73. final def sender(): ActorRef

    Permalink
    Definition Classes
    Actor
  74. val serialization: Serialization

    Permalink
    Definition Classes
    LeveldbStore
  75. def supervisorStrategy: SupervisorStrategy

    Permalink
    Definition Classes
    Actor
  76. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  77. def tagAsPersistenceId(tag: String): String

    Permalink
    Definition Classes
    LeveldbStore
  78. def tagNumericId(tag: String): Int

    Permalink
    Definition Classes
    LeveldbStore
  79. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  80. def unhandled(message: Any): Unit

    Permalink
    Definition Classes
    Actor
  81. def updateCompactionSegment(persistenceId: String, compactionSegment: Long): Unit

    Permalink
    Definition Classes
    CompactionSegmentManagement
  82. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  83. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  84. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  85. def withBatch[R](body: (WriteBatch) ⇒ R): R

    Permalink
    Definition Classes
    LeveldbStore
  86. def withIterator[R](body: (DBIterator) ⇒ R): R

    Permalink
    Definition Classes
    LeveldbStore
  87. def [B](y: B): (SharedLeveldbStore, B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from SharedLeveldbStore to ArrowAssoc[SharedLeveldbStore] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Inherited from LeveldbStore

Inherited from LeveldbCompaction

Inherited from CompactionSegmentManagement

Inherited from ActorLogging

Inherited from LeveldbRecovery

Inherited from AsyncRecovery

Inherited from LeveldbIdMapping

Inherited from WriteJournalBase

Inherited from Actor

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from SharedLeveldbStore to any2stringadd[SharedLeveldbStore]

Inherited by implicit conversion StringFormat from SharedLeveldbStore to StringFormat[SharedLeveldbStore]

Inherited by implicit conversion Ensuring from SharedLeveldbStore to Ensuring[SharedLeveldbStore]

Inherited by implicit conversion ArrowAssoc from SharedLeveldbStore to ArrowAssoc[SharedLeveldbStore]

Ungrouped