uint128

uint128

pg_uint128 : Native uint128 type

Overview

IDExtensionPackageVersionCategoryLicenseLanguage
3740
uint128
pg_uint128
1.2.0
TYPE
PostgreSQL
C
AttributeHas BinaryHas LibraryNeed LoadHas DDLRelocatableTrusted
--s-d-r
No
Yes
No
Yes
yes
no
Relationships
See Also
prefix
semver
unit
pgpdf
pglite_fusion
md5hash
asn1oid
roaringbitmap

breaks on el8 since 1.1 ,fix el8 build problem by adding __has_builtin marco

Packages

TypeRepoVersionPG Major CompatibilityPackage PatternDependencies
EXT
PIGSTY
1.2.0
18
17
16
15
14
pg_uint128-
RPM
PIGSTY
1.2.0
18
17
16
15
14
pg_uint128_$v-
DEB
PIGSTY
1.2.0
18
17
16
15
14
postgresql-$v-pg-uint128-
Linux / PGPG18PG17PG16PG15PG14
el8.x86_64
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
el8.aarch64
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
el9.x86_64
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
el9.aarch64
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
el10.x86_64
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
el10.aarch64
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
d12.x86_64
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
d12.aarch64
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
d13.x86_64
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
d13.aarch64
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
u22.x86_64
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
u22.aarch64
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
u24.x86_64
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
u24.aarch64
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PIGSTY 1.2.0
PackageVersionOSORGSIZEFile URL
pg_uint128_181.2.0el8.x86_64pigsty189.2 KiBpg_uint128_18-1.2.0-1PIGSTY.el8.x86_64.rpm
pg_uint128_181.2.0el8.aarch64pigsty176.5 KiBpg_uint128_18-1.2.0-1PIGSTY.el8.aarch64.rpm
pg_uint128_181.2.0el9.x86_64pigsty170.9 KiBpg_uint128_18-1.2.0-1PIGSTY.el9.x86_64.rpm
pg_uint128_181.2.0el9.aarch64pigsty161.4 KiBpg_uint128_18-1.2.0-1PIGSTY.el9.aarch64.rpm
pg_uint128_181.2.0el10.x86_64pigsty169.3 KiBpg_uint128_18-1.2.0-1PIGSTY.el10.x86_64.rpm
pg_uint128_181.2.0el10.aarch64pigsty163.4 KiBpg_uint128_18-1.2.0-1PIGSTY.el10.aarch64.rpm
postgresql-18-pg-uint1281.2.0d12.x86_64pigsty328.2 KiBpostgresql-18-pg-uint128_1.2.0-1PIGSTY~bookworm_amd64.deb
postgresql-18-pg-uint1281.2.0d12.aarch64pigsty318.4 KiBpostgresql-18-pg-uint128_1.2.0-1PIGSTY~bookworm_arm64.deb
postgresql-18-pg-uint1281.2.0d13.x86_64pigsty327.0 KiBpostgresql-18-pg-uint128_1.2.0-1PIGSTY~trixie_amd64.deb
postgresql-18-pg-uint1281.2.0d13.aarch64pigsty319.3 KiBpostgresql-18-pg-uint128_1.2.0-1PIGSTY~trixie_arm64.deb
postgresql-18-pg-uint1281.2.0u22.x86_64pigsty365.8 KiBpostgresql-18-pg-uint128_1.2.0-1PIGSTY~jammy_amd64.deb
postgresql-18-pg-uint1281.2.0u22.aarch64pigsty357.9 KiBpostgresql-18-pg-uint128_1.2.0-1PIGSTY~jammy_arm64.deb
postgresql-18-pg-uint1281.2.0u24.x86_64pigsty355.4 KiBpostgresql-18-pg-uint128_1.2.0-1PIGSTY~noble_amd64.deb
postgresql-18-pg-uint1281.2.0u24.aarch64pigsty352.3 KiBpostgresql-18-pg-uint128_1.2.0-1PIGSTY~noble_arm64.deb
PackageVersionOSORGSIZEFile URL
pg_uint128_171.2.0el8.x86_64pigsty189.3 KiBpg_uint128_17-1.2.0-1PIGSTY.el8.x86_64.rpm
pg_uint128_171.2.0el8.aarch64pigsty176.6 KiBpg_uint128_17-1.2.0-1PIGSTY.el8.aarch64.rpm
pg_uint128_171.2.0el9.x86_64pigsty169.9 KiBpg_uint128_17-1.2.0-1PIGSTY.el9.x86_64.rpm
pg_uint128_171.2.0el9.aarch64pigsty161.5 KiBpg_uint128_17-1.2.0-1PIGSTY.el9.aarch64.rpm
pg_uint128_171.2.0el10.x86_64pigsty169.3 KiBpg_uint128_17-1.2.0-1PIGSTY.el10.x86_64.rpm
pg_uint128_171.2.0el10.aarch64pigsty163.3 KiBpg_uint128_17-1.2.0-1PIGSTY.el10.aarch64.rpm
postgresql-17-pg-uint1281.2.0d12.x86_64pigsty327.7 KiBpostgresql-17-pg-uint128_1.2.0-1PIGSTY~bookworm_amd64.deb
postgresql-17-pg-uint1281.2.0d12.aarch64pigsty317.5 KiBpostgresql-17-pg-uint128_1.2.0-1PIGSTY~bookworm_arm64.deb
postgresql-17-pg-uint1281.2.0d13.x86_64pigsty327.1 KiBpostgresql-17-pg-uint128_1.2.0-1PIGSTY~trixie_amd64.deb
postgresql-17-pg-uint1281.2.0d13.aarch64pigsty320.1 KiBpostgresql-17-pg-uint128_1.2.0-1PIGSTY~trixie_arm64.deb
postgresql-17-pg-uint1281.2.0u22.x86_64pigsty384.2 KiBpostgresql-17-pg-uint128_1.2.0-1PIGSTY~jammy_amd64.deb
postgresql-17-pg-uint1281.2.0u22.aarch64pigsty373.3 KiBpostgresql-17-pg-uint128_1.2.0-1PIGSTY~jammy_arm64.deb
postgresql-17-pg-uint1281.2.0u24.x86_64pigsty355.4 KiBpostgresql-17-pg-uint128_1.2.0-1PIGSTY~noble_amd64.deb
postgresql-17-pg-uint1281.2.0u24.aarch64pigsty352.3 KiBpostgresql-17-pg-uint128_1.2.0-1PIGSTY~noble_arm64.deb
PackageVersionOSORGSIZEFile URL
pg_uint128_161.2.0el8.x86_64pigsty189.1 KiBpg_uint128_16-1.2.0-1PIGSTY.el8.x86_64.rpm
pg_uint128_161.2.0el8.aarch64pigsty176.3 KiBpg_uint128_16-1.2.0-1PIGSTY.el8.aarch64.rpm
pg_uint128_161.2.0el9.x86_64pigsty170.7 KiBpg_uint128_16-1.2.0-1PIGSTY.el9.x86_64.rpm
pg_uint128_161.2.0el9.aarch64pigsty161.4 KiBpg_uint128_16-1.2.0-1PIGSTY.el9.aarch64.rpm
pg_uint128_161.2.0el10.x86_64pigsty169.3 KiBpg_uint128_16-1.2.0-1PIGSTY.el10.x86_64.rpm
pg_uint128_161.2.0el10.aarch64pigsty164.1 KiBpg_uint128_16-1.2.0-1PIGSTY.el10.aarch64.rpm
postgresql-16-pg-uint1281.2.0d12.x86_64pigsty327.5 KiBpostgresql-16-pg-uint128_1.2.0-1PIGSTY~bookworm_amd64.deb
postgresql-16-pg-uint1281.2.0d12.aarch64pigsty318.1 KiBpostgresql-16-pg-uint128_1.2.0-1PIGSTY~bookworm_arm64.deb
postgresql-16-pg-uint1281.2.0d13.x86_64pigsty326.9 KiBpostgresql-16-pg-uint128_1.2.0-1PIGSTY~trixie_amd64.deb
postgresql-16-pg-uint1281.2.0d13.aarch64pigsty319.7 KiBpostgresql-16-pg-uint128_1.2.0-1PIGSTY~trixie_arm64.deb
postgresql-16-pg-uint1281.2.0u22.x86_64pigsty381.3 KiBpostgresql-16-pg-uint128_1.2.0-1PIGSTY~jammy_amd64.deb
postgresql-16-pg-uint1281.2.0u22.aarch64pigsty371.7 KiBpostgresql-16-pg-uint128_1.2.0-1PIGSTY~jammy_arm64.deb
postgresql-16-pg-uint1281.2.0u24.x86_64pigsty354.6 KiBpostgresql-16-pg-uint128_1.2.0-1PIGSTY~noble_amd64.deb
postgresql-16-pg-uint1281.2.0u24.aarch64pigsty352.0 KiBpostgresql-16-pg-uint128_1.2.0-1PIGSTY~noble_arm64.deb
PackageVersionOSORGSIZEFile URL
pg_uint128_151.2.0el8.x86_64pigsty189.7 KiBpg_uint128_15-1.2.0-1PIGSTY.el8.x86_64.rpm
pg_uint128_151.2.0el8.aarch64pigsty176.8 KiBpg_uint128_15-1.2.0-1PIGSTY.el8.aarch64.rpm
pg_uint128_151.2.0el9.x86_64pigsty170.2 KiBpg_uint128_15-1.2.0-1PIGSTY.el9.x86_64.rpm
pg_uint128_151.2.0el9.aarch64pigsty161.3 KiBpg_uint128_15-1.2.0-1PIGSTY.el9.aarch64.rpm
pg_uint128_151.2.0el10.x86_64pigsty172.0 KiBpg_uint128_15-1.2.0-1PIGSTY.el10.x86_64.rpm
pg_uint128_151.2.0el10.aarch64pigsty164.7 KiBpg_uint128_15-1.2.0-1PIGSTY.el10.aarch64.rpm
postgresql-15-pg-uint1281.2.0d12.x86_64pigsty331.8 KiBpostgresql-15-pg-uint128_1.2.0-1PIGSTY~bookworm_amd64.deb
postgresql-15-pg-uint1281.2.0d12.aarch64pigsty322.1 KiBpostgresql-15-pg-uint128_1.2.0-1PIGSTY~bookworm_arm64.deb
postgresql-15-pg-uint1281.2.0d13.x86_64pigsty331.3 KiBpostgresql-15-pg-uint128_1.2.0-1PIGSTY~trixie_amd64.deb
postgresql-15-pg-uint1281.2.0d13.aarch64pigsty324.3 KiBpostgresql-15-pg-uint128_1.2.0-1PIGSTY~trixie_arm64.deb
postgresql-15-pg-uint1281.2.0u22.x86_64pigsty383.8 KiBpostgresql-15-pg-uint128_1.2.0-1PIGSTY~jammy_amd64.deb
postgresql-15-pg-uint1281.2.0u22.aarch64pigsty374.0 KiBpostgresql-15-pg-uint128_1.2.0-1PIGSTY~jammy_arm64.deb
postgresql-15-pg-uint1281.2.0u24.x86_64pigsty359.3 KiBpostgresql-15-pg-uint128_1.2.0-1PIGSTY~noble_amd64.deb
postgresql-15-pg-uint1281.2.0u24.aarch64pigsty356.3 KiBpostgresql-15-pg-uint128_1.2.0-1PIGSTY~noble_arm64.deb
PackageVersionOSORGSIZEFile URL
pg_uint128_141.2.0el8.x86_64pigsty189.7 KiBpg_uint128_14-1.2.0-1PIGSTY.el8.x86_64.rpm
pg_uint128_141.2.0el8.aarch64pigsty176.7 KiBpg_uint128_14-1.2.0-1PIGSTY.el8.aarch64.rpm
pg_uint128_141.2.0el9.x86_64pigsty171.5 KiBpg_uint128_14-1.2.0-1PIGSTY.el9.x86_64.rpm
pg_uint128_141.2.0el9.aarch64pigsty161.7 KiBpg_uint128_14-1.2.0-1PIGSTY.el9.aarch64.rpm
pg_uint128_141.2.0el10.x86_64pigsty171.8 KiBpg_uint128_14-1.2.0-1PIGSTY.el10.x86_64.rpm
pg_uint128_141.2.0el10.aarch64pigsty165.1 KiBpg_uint128_14-1.2.0-1PIGSTY.el10.aarch64.rpm
postgresql-14-pg-uint1281.2.0d12.x86_64pigsty331.7 KiBpostgresql-14-pg-uint128_1.2.0-1PIGSTY~bookworm_amd64.deb
postgresql-14-pg-uint1281.2.0d12.aarch64pigsty322.1 KiBpostgresql-14-pg-uint128_1.2.0-1PIGSTY~bookworm_arm64.deb
postgresql-14-pg-uint1281.2.0d13.x86_64pigsty331.0 KiBpostgresql-14-pg-uint128_1.2.0-1PIGSTY~trixie_amd64.deb
postgresql-14-pg-uint1281.2.0d13.aarch64pigsty324.1 KiBpostgresql-14-pg-uint128_1.2.0-1PIGSTY~trixie_arm64.deb
postgresql-14-pg-uint1281.2.0u22.x86_64pigsty383.7 KiBpostgresql-14-pg-uint128_1.2.0-1PIGSTY~jammy_amd64.deb
postgresql-14-pg-uint1281.2.0u22.aarch64pigsty374.0 KiBpostgresql-14-pg-uint128_1.2.0-1PIGSTY~jammy_arm64.deb
postgresql-14-pg-uint1281.2.0u24.x86_64pigsty359.4 KiBpostgresql-14-pg-uint128_1.2.0-1PIGSTY~noble_amd64.deb
postgresql-14-pg-uint1281.2.0u24.aarch64pigsty356.3 KiBpostgresql-14-pg-uint128_1.2.0-1PIGSTY~noble_arm64.deb

Source

pig build pkg pg_uint128;		# 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 pg_uint128;		# install via package name, for the active PG version
pig install uint128;		# install by extension name, for the current active PG version

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

Create this extension with:

CREATE EXTENSION uint128;

Usage

uint128: unsigned 128-bit integer type for PostgreSQL

The uint128 extension provides comprehensive unsigned and 128-bit integer types with full operator and index support.

CREATE EXTENSION uint128;

Data Types

TypeSizeRange
uint18-bit0 to 255
uint216-bit0 to 65535
uint432-bit0 to 4294967295
uint864-bit0 to 18446744073709551615
uint16128-bit0 to 340282366920938463463374607431768211455
int18-bit-128 to 127
int16128-bit-170141183460469231731687303715884105728 to 170141183460469231731687303715884105727

Operators

  • Arithmetic: +, -, *, /, %
  • Bitwise: # (XOR), & (AND), | (OR), ~ (NOT), << (left shift), >> (right shift)
  • Comparison: =, <>, >, <, >=, <=

Mixed-type arithmetic between signed and unsigned types is supported.

Features

  • Range types for all integer types (uint1range, uint16range, etc.) with GiST indexing
  • Casts to/from numeric, real, double, uuid (uint16 only), json, jsonb
  • Aggregate functions: SUM, AVG, MIN, MAX
  • generate_series() support for all types
  • Btree and hash index support
  • Binary send/receive protocol support
Last updated on