Package-level declarations

Types

Link copied to clipboard
data class CatalogRow(val database: String, val table: String, val tableUuid: String, val role: String, val service: String, val context: String, val aggregate: String, val ownership: String, val tenantColumn: String, val ownerColumn: String, val spaceColumn: String, val sensitive: List<FieldSensitivity>, val references: List<SourceReference>, val eventRevisions: Map<String, Int>, val fingerprint: String, val columnsHash: String, val writtenAt: String, val writer: String, val access: String = "")

One wow_catalog row: what the Wow Sink says of database's table (whose uuid it read as tableUuid and whose columns it expects to hash to columnsHash), and the account that wrote it (writer, the server's currentUser(), which no insert can set).

Link copied to clipboard

The trust rules of wow_catalog: a row is adopted only when every rule holds:

Link copied to clipboard
fun interface KnownAggregates

Answers whether the catalog knows an aggregate, which an analyst's column may refer to ((b)): one a Wow source of the catalog is of. The service binds it to the catalog's own snapshot query.

Link copied to clipboard
fun interface TrustedWriters

Which warehouse accounts the catalog trusts to describe the tables of which contexts (wow.analytics.catalog.trusted-writers): the account the Wow Sink of those contexts inserts as. The service binds it from its configuration.

Link copied to clipboard

The warehouse's metadata, the base of the data-source catalog: the tables and views of the configured databases (databases) of one warehouse connection, each a source identified by (connection, database, table), and the wow_catalog rows the Wow Sink appended of them. 10.0 has the ClickHouse implementation (system.tables, system.columns, <database>.wow_catalog); the service binds it.

Link copied to clipboard
data class WarehouseTable(val database: String, val name: String, val uuid: String, val tableEngine: String, val columns: List<SourceColumn>)

database's table name as the warehouse has it now: its uuid, its tableEngine and its columns, in order.

Link copied to clipboard
data class WarehouseTableInfo(val name: String, val uuid: String, val tableEngine: String, val modifiedAt: String, val columns: String = "")

A table or view of the warehouse as its list says: its name, uuid, tableEngine (the kind of table, as the warehouse names it), when its metadata last changed (modifiedAt) and a fingerprint of its columns (columns: their positions, names and types), both opaque text compared for change only. The fingerprint tells a change the time cannot, such as an ALTER in the same second as the last look.