Class DynamoDbSessionStoreOptions
java.lang.Object
com.google.genkit.plugins.awsbedrock.session.DynamoDbSessionStoreOptions
Configuration for
DynamoDbSessionStore.
The store persists all rows in a single DynamoDB table (default "genkit-sessions") keyed
by a partition key pk (the per-tenant prefix) and a sort key sk that
discriminates snapshot, shard, and pointer rows. All rows for a tenant share the same pk,
derived from getSnapshotPathPrefix() (default "global").
The default getShardSize() is 358400 bytes, kept safely under
the DynamoDB 400 KB item-size limit; because the store forces a checkpoint whenever a diff
would exceed the shard size, diff rows stay bounded too.
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intDefault number of turns between full checkpoints.static final longDefault subscription poll interval in milliseconds.static final intDefault shard size in bytes for checkpoint state (350 KiB, under the 400 KB item cap).static final StringDefault table name. -
Method Summary
Modifier and TypeMethodDescriptionbuilder()Creates a new builder.static DynamoDbSessionStoreOptionsdefaults()Returns default options.intReturns the number of turns between full checkpoints (default 25).longReturns the subscription poll interval in milliseconds (default 2000L).intReturns the shard size in bytes for checkpoint state (default 358400).Returns the function that derives the per-tenant partition-key prefix from the per-request store options (defaulto -> "global").Returns the DynamoDB table name (default "genkit-sessions").booleanReturns whether the store should create the table on first use if it does not exist (defaultfalse).
-
Field Details
-
DEFAULT_TABLE
Default table name.- See Also:
-
DEFAULT_CHECKPOINT_INTERVAL
public static final int DEFAULT_CHECKPOINT_INTERVALDefault number of turns between full checkpoints.- See Also:
-
DEFAULT_SHARD_SIZE
public static final int DEFAULT_SHARD_SIZEDefault shard size in bytes for checkpoint state (350 KiB, under the 400 KB item cap).- See Also:
-
DEFAULT_POLL_INTERVAL_MS
public static final long DEFAULT_POLL_INTERVAL_MSDefault subscription poll interval in milliseconds.- See Also:
-
-
Method Details
-
getTableName
Returns the DynamoDB table name (default "genkit-sessions").- Returns:
- the table name
-
getCheckpointInterval
public int getCheckpointInterval()Returns the number of turns between full checkpoints (default 25).- Returns:
- the checkpoint interval
-
getShardSize
public int getShardSize()Returns the shard size in bytes for checkpoint state (default 358400).- Returns:
- the shard size in bytes
-
getSnapshotPathPrefix
Returns the function that derives the per-tenant partition-key prefix from the per-request store options (defaulto -> "global").- Returns:
- the prefix function
-
isCreateTableIfNotExists
public boolean isCreateTableIfNotExists()Returns whether the store should create the table on first use if it does not exist (defaultfalse).- Returns:
trueif the table should be created when missing
-
getPollIntervalMs
public long getPollIntervalMs()Returns the subscription poll interval in milliseconds (default 2000L).- Returns:
- the poll interval in milliseconds
-
defaults
Returns default options.- Returns:
- a
DynamoDbSessionStoreOptionswith all defaults
-
builder
Creates a new builder.- Returns:
- a new builder
-