Liking cljdoc? Tell your friends :D

datahike.pg.catalog.objects

Persistent PostgreSQL catalog identities for user-defined objects.

PostgreSQL identifies an object by (catalog relation OID, object OID), with an optional sub-object number for columns. Keeping that shape here lets routines, triggers, dependencies, and future catalog work share one transactional identity model instead of inventing per-feature IDs.

Persistent PostgreSQL catalog identities for user-defined objects.

PostgreSQL identifies an object by (catalog relation OID, object OID),
with an optional sub-object number for columns.  Keeping that shape here
lets routines, triggers, dependencies, and future catalog work share one
transactional identity model instead of inventing per-feature IDs.
raw docstring

addressclj

(address class-oid object-oid)
(address class-oid object-oid sub-id)

A PostgreSQL object address. sub-id is zero for the object itself and positive for a sub-object such as a table column.

A PostgreSQL object address.  `sub-id` is zero for the object itself and
positive for a sub-object such as a table column.
sourceraw docstring

address-keyclj

(address-key class-oid object-oid)

Stable structural serialization of a top-level catalog address.

Stable structural serialization of a top-level catalog address.
sourceraw docstring

bump-revision-txclj

(bump-revision-tx db class-oid object-oid)
source

catalog-entityclj

(catalog-entity db)
source

catalog-keyclj

source

catalog-versionclj

source

create-object-txclj

(create-object-tx db
                  {:keys [class-oid oid kind name namespace-oid owner-oid
                          revision legacy-oid? identity-tail]
                   :or {owner-oid 10 revision 1}})

Build an object-row transaction. Namespace may be nil for cluster-global objects; otherwise it must already exist. The two :db.unique/value keys are the atomic stale-reader guard: Datahike rejects duplicates and cannot upsert/merge them as it would :db.unique/identity.

Build an object-row transaction.  Namespace may be nil for cluster-global
objects; otherwise it must already exist.  The two :db.unique/value keys
are the atomic stale-reader guard: Datahike rejects duplicates and cannot
upsert/merge them as it would :db.unique/identity.
sourceraw docstring

creation-namespaceclj

(creation-namespace db entries user-name)

The first existing explicit search_path entry. The implicit pg_catalog entry used for lookup is deliberately not a creation target.

The first existing explicit search_path entry.  The implicit pg_catalog
entry used for lookup is deliberately not a creation target.
sourceraw docstring

drop-object-txclj

(drop-object-tx db class-oid object-oid)
source

first-user-oidclj

source

identity-keyclj

(identity-key class-oid namespace-oid name)
(identity-key class-oid namespace-oid name tail)

Stable structural serialization of a namespace-scoped object identity. tail carries kind-specific identity, notably a routine's argument types.

Stable structural serialization of a namespace-scoped object identity.
`tail` carries kind-specific identity, notably a routine's argument types.
sourceraw docstring

initialization-txclj

(initialization-tx legacy-objects next-oid)
source

initialize-catalogclj

(initialize-catalog txdb legacy-objects next-oid)

Transaction function for an atomic, idempotent version-1 migration. legacy-objects must already have deterministic, collision-free OIDs.

Transaction function for an atomic, idempotent version-1 migration.
`legacy-objects` must already have deterministic, collision-free OIDs.
sourceraw docstring

namespace-by-nameclj

(namespace-by-name db name)
source

namespace-by-oidclj

(namespace-by-oid db oid)
source

object-by-addressclj

(object-by-address db class-oid object-oid)
source

object-by-identityclj

(object-by-identity db class-oid namespace-oid name)
(object-by-identity db class-oid namespace-oid name tail)
source

objects-by-kindclj

(objects-by-kind db kind)
source

objects-in-namespaceclj

(objects-in-namespace db namespace-oid)
source

pg-catalog-namespace-oidclj

source

pg-class-oidclj

source

pg-namespace-oidclj

source

pg-proc-oidclj

source

pg-trigger-oidclj

source

pg-type-oidclj

source

public-namespace-oidclj

source

rename-object-txclj

(rename-object-tx db class-oid object-oid new-name identity-tail)
source

reserve-user-oid-txclj

(reserve-user-oid-tx db)

Reserve one currently-unused user OID with a CAS operation that the caller must transact together with the object creation. Allocation is therefore rolled back with its DDL and naturally chains against a speculative DB.

Reserve one currently-unused user OID with a CAS operation that the caller
must transact together with the object creation.  Allocation is therefore
rolled back with its DDL and naturally chains against a speculative DB.
sourceraw docstring

resolve-search-pathclj

(resolve-search-path db entries user-name)

Resolve PostgreSQL search_path entries to existing namespace OIDs. pg_catalog is implicitly searched first unless explicitly positioned. $user contributes a schema only when it exists.

Resolve PostgreSQL search_path entries to existing namespace OIDs.
pg_catalog is implicitly searched first unless explicitly positioned.
`$user` contributes a schema only when it exists.
sourceraw docstring

schemaclj

Datahike schema for the shared user-object catalog. Address and identity keys use strict unique/value semantics: an attempted duplicate must fail, never upsert or merge two independently-created objects.

Datahike schema for the shared user-object catalog.  Address and identity
keys use strict unique/value semantics: an attempted duplicate must fail,
never upsert or merge two independently-created objects.
sourceraw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
Move to previous article
Move to next article
Ctrl+/Jump to the search field
× close