Package io.camunda.zeebe.db
Interface ZeebeDbFactory<ColumnFamilyNames extends Enum<ColumnFamilyNames>>
- Type Parameters:
ColumnFamilyNames- the names of the column families
- All Known Implementing Classes:
ZeebeRocksDbFactory
public interface ZeebeDbFactory<ColumnFamilyNames extends Enum<ColumnFamilyNames>>
Represents the zeebe database factory. The
ZeebeDbFactory has to be an enum and
specifies the different column families for the zeebe database.-
Method Summary
Modifier and TypeMethodDescriptionCreates a zeebe database in the given directory.openSnapshotOnlyDb(File path) Opens an existing DB in read-only mode for the sole purpose of creating snapshots from it.
-
Method Details
-
createDb
Creates a zeebe database in the given directory.- Parameters:
pathName- the path where the database should be created- Returns:
- the created zeebe database
-
openSnapshotOnlyDb
Opens an existing DB in read-only mode for the sole purpose of creating snapshots from it.NOTE: if a read-only DB is required in the future that allows actually reading, then this can be extended to do so. However, keep in mind that you cannot use transactions on such DBs, and it might be better to do this when we've moved away from the transaction DB family.
- Parameters:
path- the path to the existing database- Returns:
- a snapshot-able DB
-