class EventsByTagMigration extends AnyRef
- Alphabetic
- By Inheritance
- EventsByTagMigration
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new EventsByTagMigration(systemProvider: ClassicActorSystemProvider, pluginConfigPath: String = "akka.persistence.cassandra")
- pluginConfigPath
The config namespace where the plugin is configured, default is
akka.persistence.cassandra
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def addTagsColumn(): Future[Done]
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def createTables(): Future[Done]
- implicit val ec: ExecutionContext
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def migratePidsToTagViews(pids: Seq[PersistenceId], periodicFlush: Int = 0, flushTimeout: Timeout = Timeout(30.seconds)): Future[Done]
Migrates the given persistenceIds from the
messages
table to the newtags_view
table.Migrates the given persistenceIds from the
messages
table to the newtags_view
table.tag_view
table must exist before calling this and can be created manually or via [createTagsTable]This is useful if there there is a more efficient way of getting all the persistenceIds than [CassandraReadJournal.currentPersistenceIds] which does a distinct query on the
messages
table.This can also be used to do partial migrations e.g. test a persistenceId in production before migrating everything.
It is recommended you use this if the
messages
table is large.Events are batched with the given
periodicFlush
. By default the value equals configuredevents-by-tag.max-message-batch-size
.- pids
PersistenceIds to migrate
- returns
A Future that completes when the migration is complete
- def migrateToTagViews(periodicFlush: Int = 0, filter: (String) => Boolean = _ => true, flushTimeout: Timeout = Timeout(30.seconds)): Future[Done]
Migrates the entire
messages
table to the the newtag_views
table.Migrates the entire
messages
table to the the newtag_views
table.Before running this you must run the migration of the
all_persistence_ids
table as described in https://doc.akka.io/libraries/akka-persistence-cassandra/current/migrations.html#all-persistenceIds-queryUses [CassandraReadJournal.currentPersistenceIds] to find all persistenceIds. Note that this is a very inefficient cassandra query so might timeout. If so the version of this method can be used where the persistenceIds are provided.
Persistence ids can be excluded (e.g. useful if you know certain persistenceIds don't use tags.
Events are batched with the given
periodicFlush
. By default the value equals configuredevents-by-tag.max-message-batch-size
.- returns
A Future that completes when the migration is complete.
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- lazy val session: CassandraSession
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()