Skip to main content
Catalog methods let you introspect the Iceberg catalogs registered in oleander. Unless specified otherwise, catalog defaults to the built-in oleander catalog and namespace defaults to default.

listCatalogs(options?)

List the Iceberg catalogs registered in oleander. Pass includeTables: true to also walk every catalog and return the visible catalog/namespace/table triples in catalogs — this is slower; otherwise catalogs is empty.

Parameters

boolean
default:"false"
Also walk every catalog and populate catalogs with visible tables.

Return type: ListCatalogsResult


listCatalogNamespaces(catalog?)

List Iceberg namespaces in a catalog.

Return type: ListCatalogNamespacesResult


listCatalogTables(options?)

List Iceberg tables in a catalog. When namespace is omitted, tables are listed across all namespaces in the catalog; namespaces that fail to list are skipped.

Parameters

string
default:"oleander"
Catalog to list tables from.
string
Restrict listing to one namespace. Omit to list across all namespaces.

Return type: ListCatalogTablesResult


getCatalogTableMetadata(options)

Read the Iceberg REST catalog metadata for a single table. The result’s table field is the raw Iceberg metadata: location, schemas, partition-specs, snapshots, properties, and so on.

Parameters

string
required
Table name.
string
default:"oleander"
Catalog name.
string
default:"default"
Namespace name.

Return type: CatalogTableMetadataResult


getCatalogTableSchema(options)

Get the current schema of a table as a flat field list. Resolves current-schema-id against the schemas array of the Iceberg metadata, falling back to the newest schema. Use getCatalogTableMetadata() for the full metadata including schema history. Accepts the same options as getCatalogTableMetadata().

Return type: CatalogTableSchemaResult

type is a string for primitive types (for example, "long" or "string") and an object for nested types such as struct, list, and map.

getCatalogTableSize(options)

Compute the size of a table or a partition subset. sizeBytes and recordCount are returned as strings since they can exceed Number.MAX_SAFE_INTEGER.

Parameters

Accepts the same table/catalog/namespace options as getCatalogTableMetadata(), plus:
string
Compute the size at a specific snapshot instead of the current one.
{ key, value }[]
default:"[]"
Restrict the size computation to matching partitions.

Return type: CatalogTableSizeResult