omni_id

omni_id

omnigres : Identity types

Overview

ID Extension Package Version Category License Language
2952
omni_id
omnigres
0.4.3
FEAT
Apache-2.0
C
Attribute Has Binary Has Library Need Load Has DDL Relocatable Trusted
--s-d-r
No
Yes
No
Yes
yes
no
Relationships
Need By
omni_auth
omni_email
omni_ledger
omni_session
Siblings
omni
omni_auth
omni_aws
omni_cloudevents
omni_containers
omni_credentials
omni_email
omni_http
omni_httpc
omni_httpd
omni_json
omni_kube
omni_ledger
omni_manifest
omni_mimetypes
omni_os
omni_polyfill
omni_python
omni_regex
omni_rest
omni_schema
omni_seq
omni_service
omni_session
omni_sql
omni_sqlite
omni_test
omni_txn
omni_types
omni_var
omni_vfs
omni_vfs_types_v1
omni_web
omni_worker
omni_xml
omni_yaml

Packages

Type Repo Version PG Major Compatibility Package Pattern Dependencies
EXT
PIGSTY
0.4.3
18
17
16
15
14
omnigres -
RPM
PIGSTY
0.4.3
18
17
16
15
14
omnigres_$v -
DEB
PIGSTY
0.4.3
18
17
16
15
14
postgresql-$v-omnigres -
Linux / PG PG18 PG17 PG16 PG15 PG14
el8.x86_64
MISS
PIGSTY 20250120
PIGSTY 20250120
PIGSTY 20250120
PIGSTY 20250120
el8.aarch64
MISS
PIGSTY 20250120
PIGSTY 20250120
PIGSTY 20250120
PIGSTY 20250120
el9.x86_64
MISS
PIGSTY 20250507
PIGSTY 20250507
PIGSTY 20250507
PIGSTY 20250507
el9.aarch64
MISS
PIGSTY 20250507
PIGSTY 20250507
PIGSTY 20250507
PIGSTY 20250507
el10.x86_64
MISS
MISS
MISS
MISS
MISS
el10.aarch64
MISS
MISS
MISS
MISS
MISS
d12.x86_64
MISS
PIGSTY 20250120
PIGSTY 20250120
PIGSTY 20250120
PIGSTY 20250120
d12.aarch64
MISS
PIGSTY 20250120
PIGSTY 20250120
PIGSTY 20250120
PIGSTY 20250120
d13.x86_64
PIGSTY 20251108
PIGSTY 20251108
PIGSTY 20251108
PIGSTY 20251108
PIGSTY 20251108
d13.aarch64
PIGSTY 20251108
PIGSTY 20251108
PIGSTY 20251108
PIGSTY 20251108
PIGSTY 20251108
u22.x86_64
MISS
PIGSTY 20250120
PIGSTY 20250120
PIGSTY 20250120
PIGSTY 20250120
u22.aarch64
MISS
PIGSTY 20250120
PIGSTY 20250120
PIGSTY 20250120
PIGSTY 20250120
u24.x86_64
PIGSTY 20251108
PIGSTY 20251108
PIGSTY 20251108
PIGSTY 20251108
PIGSTY 20251108
u24.aarch64
PIGSTY 20251108
PIGSTY 20251108
PIGSTY 20251108
PIGSTY 20251108
PIGSTY 20251108

Source

pig build pkg omnigres;		# build rpm/deb

Install

Make sure PGDG and PIGSTY repo available:

pig repo add pgsql -u   # add both repo and update cache

Install this extension with pig:

pig install omnigres;		# install via package name, for the active PG version
pig install omni_id;		# install by extension name, for the current active PG version

pig install omni_id -v 18;   # install for PG 18
pig install omni_id -v 17;   # install for PG 17
pig install omni_id -v 16;   # install for PG 16
pig install omni_id -v 15;   # install for PG 15
pig install omni_id -v 14;   # install for PG 14

Create this extension with:

CREATE EXTENSION omni_id;

Usage

omni_id: Identity types

The omni_id extension introduces custom identity types that prevent comparison errors between different ID types, catching bugs at query time.

Create an Identity Type

CREATE EXTENSION omni_id;
SELECT identity_type('user_id');

This creates a user_id type backed by bigint (default) with an auto-created sequence and constructor function.

Parameters

Parameter Default Description
type bigint Base type (int, smallint, uuid)
sequence <type>_seq Sequence identifier
create_sequence true Auto-create sequence
increment 1 Sequence step value
cache Pre-allocate sequence numbers
cycle Enable wraparound at limits
constructor Constructor function name
operator_schema public Schema for operators

Auto-Generated Functions

  • user_id(1) – Constructor
  • user_id_nextval() – Get next value
  • user_id_currval() – Get current value
  • user_id_setval(user_id, bool) – Set value
Last updated on