Skip to main content

Admin Client

GitHub source:

The admin entry point is cli.Admin().

What This Client Is For​

AdminClient owns cluster, database, table, partition, snapshot-metadata, and ACL-style administrative RPCs.

The most strongly validated user-facing area today is:

  • database, table, and partition lifecycle
  • schema/info retrieval
  • snapshot and lake metadata retrieval

Common Pattern​

admin := cli.Admin()

names, summaries, err := admin.ListDatabases(ctx, true)
if err != nil {
log.Fatal(err)
}

Database Operations​

  • ListDatabases(...)
  • DatabaseExists(...)
  • CreateDatabase(...)
  • DropDatabase(...)
  • GetDatabaseInfo(...)

Typical use:

  • discover databases
  • check existence before higher-level workflows
  • create/drop development or temporary environments
  • fetch raw database JSON and metadata timestamps when you need descriptor-level information

Table Operations​

  • ListTables(...)
  • TableExists(...)
  • CreateTable(...)
  • AlterTable(...)
  • DropTable(...)
  • GetTableInfo(...)
  • GetTableSchema(...)

Typical use:

  • create or alter Fluss tables using descriptor JSON
  • discover IDs, schema IDs, and raw table metadata JSON
  • load current or historical schema JSON for row decoding and snapshot planning

Partition Operations​

  • ListPartitionInfos(...)
  • ListPartitionInfosWithSpec(...)
  • CreatePartition(...)
  • DropPartition(...)

Typical use:

  • enumerate partitions
  • scope queries or lifecycle flows to partial specs
  • provision partitioned-table test data explicitly

Snapshot and Lake Metadata​

  • GetLatestKvSnapshots(...)
  • GetKvSnapshotMetadata(...)
  • GetLatestLakeSnapshot(...)
  • GetLakeSnapshot(...)
  • GetReadableLakeSnapshot(...)

Typical use:

  • resolve current KV snapshot IDs by bucket
  • fetch remote snapshot file metadata for snapshot scan
  • inspect lake snapshot IDs and bucket offsets for lake-enabled tables

These APIs are a key bridge between “admin metadata” and “actual read path behavior”.

Cluster and ACL Operations​

  • DescribeClusterConfigs(...)
  • AlterClusterConfigs(...)
  • AddServerTag(...)
  • RemoveServerTag(...)
  • Rebalance(...)
  • ListRebalanceProgress(...)
  • CancelRebalance(...)
  • ListACLs(...)
  • CreateACLs(...)
  • DropACLs(...)

These operations are implemented and useful, but not every one of them has the same real-cluster validation depth as the safer database/table/partition flows.

Writer Initialization​

  • InitWriter(...)

This exists for the current public writer bootstrap / writer-ID negotiation slice.

Important Return Shapes​

Common returned types include:

  • DatabaseInfo
  • DatabaseSummary
  • TableInfo
  • SchemaInfo
  • PartitionInfo
  • KvSnapshots
  • KvSnapshotMetadata
  • LakeSnapshot
  • InitWriterResult

Guidance​

Not every admin operation has identical real-cluster validation depth today. The safest way to describe support is:

  • basic database, table, partition, snapshot, and lake metadata flows are strongly documented
  • broader cluster-global mutations are implemented and request-tested, but not all are part of the narrow demo contract