跳转到主要内容

documentdb_extended_rum

DocumentDB Extended RUM index access method

documentdb : DocumentDB Extended RUM index access method

Overview

ID Extension Package Version Category License Language
9030 documentdb_extended_rum documentdb 0.114 SIM MIT C
Attribute Has Binary Has Library Need Load Has DDL Relocatable Trusted
--sLd-r No Yes Yes Yes yes no

Packages

Type Repo Version PG Major Compatibility Package Pattern Dependencies
EXT PIGSTY 0.114 18 17 16 15 14 documentdb documentdb
RPM PIGSTY 0.114 18 17 16 15 14 documentdb_$v postgresql$v-contrib, pg_cron_$v, pgvector_$v, rum_$v, postgis36_$v
DEB PIGSTY 0.114 18 17 16 15 14 postgresql-$v-documentdb postgresql-$v-cron, postgresql-$v-pgvector, postgresql-$v-rum, postgresql-$v-postgis-3
Linux / PG PG18 PG17 PG16 PG15 PG14
el8.x86_64 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 N/A
el8.aarch64 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 N/A
el9.x86_64 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 N/A
el9.aarch64 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 N/A
el10.x86_64 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 N/A
el10.aarch64 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 N/A
d12.x86_64 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 N/A
d12.aarch64 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 N/A
d13.x86_64 PGDG 0.114 PGDG 0.114 PGDG 0.114 PGDG 0.114 N/A
d13.aarch64 PGDG 0.114 PGDG 0.114 PGDG 0.114 PGDG 0.114 N/A
u22.x86_64 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 N/A
u22.aarch64 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 N/A
u24.x86_64 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 N/A
u24.aarch64 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 PIGSTY 0.114 N/A
u26.x86_64 PGDG 0.114 PGDG 0.114 PGDG 0.114 PGDG 0.114 N/A
u26.aarch64 PGDG 0.114 PGDG 0.114 PGDG 0.114 PGDG 0.114 N/A

Source

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

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

Config this extension to shared_preload_libraries:

shared_preload_libraries = 'pg_documentdb, pg_documentdb_core, pg_documentdb_extended_rum';

Create this extension with:

CREATE EXTENSION documentdb_extended_rum CASCADE; -- requires documentdb

Usage

Sources:

documentdb_extended_rum is DocumentDB’s extended RUM index access method. It is an implementation component selected by DocumentDB’s indexing layer, not a general-purpose application index or a replacement for installing documentdb.

Configure and Install

The library can only be initialized from shared_preload_libraries. Preload it after the base DocumentDB libraries and restart PostgreSQL:

shared_preload_libraries = 'pg_cron, pg_documentdb_core, pg_documentdb, pg_documentdb_extended_rum'
documentdb.alternate_index_handler_name = 'extended_rum'

Then install the extension using the same release as the base stack:

CREATE EXTENSION documentdb CASCADE;
CREATE EXTENSION documentdb_extended_rum;

DocumentDB deployment tooling normally owns this configuration. Existing databases should follow the release-specific upgrade procedure rather than switching an index handler ad hoc.

Important Objects

  • documentdb_extended_rum is the index access method registered by the extension.
  • documentdb_extended_rum_catalog contains BSON operator families and classes used by DocumentDB.
  • documentdb.alternate_index_handler_name = 'extended_rum' directs the DocumentDB index layer to the adapter.
  • The implementation is a RUM fork whose on-disk layout and content are designed to remain backward compatible with upstream RUM while changing query and volatile paths for document workloads.

Operational Boundaries

Install and upgrade this component with matching documentdb and documentdb_core binaries. Do not build indexes with its internal operator classes directly unless following upstream development guidance; create and manage indexes through the DocumentDB APIs so metadata stays consistent.

The v0.114-0 changelog describes a RUM WAL page-reuse marker and targeted posting-tree pruning, but both are feature-flagged and disabled by default pending stabilization. They are not default user-visible capabilities of this release.