Skip to content

documentdb_distributed

Multi-Node API surface for DocumentDB

documentdb : Multi-Node API surface for DocumentDB

Overview

ID Extension Package Version Category License Language
9020 documentdb_distributed documentdb 0.116 SIM MIT C
Attribute Has Binary Has Library Need Load Has DDL Relocatable Trusted
--sLd-- No Yes Yes Yes no no

Packages

Type Repo Version PG Major Compatibility Package Pattern Dependencies
EXT PIGSTY 0.116 18 17 16 15 14 documentdb citus, documentdb_core, documentdb
RPM PIGSTY 0.116 18 17 16 15 14 documentdb_$v postgresql$v-contrib, pg_cron_$v, pgvector_$v, rum_$v, postgis36_$v
DEB PIGSTY 0.116 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.117 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 N/A
el8.aarch64 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 N/A
el9.x86_64 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 N/A
el9.aarch64 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 N/A
el10.x86_64 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 N/A
el10.aarch64 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 N/A
d12.x86_64 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 N/A
d12.aarch64 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 N/A
d13.x86_64 PGDG 1.0 PGDG 1.0 PGDG 1.0 PGDG 1.0 N/A
d13.aarch64 PGDG 1.0 PGDG 1.0 PGDG 1.0 PGDG 1.0 N/A
u22.x86_64 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 N/A
u22.aarch64 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 N/A
u24.x86_64 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 N/A
u24.aarch64 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 PIGSTY 0.117 N/A
u26.x86_64 PGDG 1.0 PGDG 1.0 PGDG 1.0 PGDG 1.0 N/A
u26.aarch64 PGDG 1.0 PGDG 1.0 PGDG 1.0 PGDG 1.0 N/A

Source

documentdb-0.116-0.tar.gz intelrdfpmath-applied-2.0u3-1.tar.gz

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_distributed;		# install by extension name, for the current active PG version

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

Config this extension to shared_preload_libraries:

shared_preload_libraries = 'citus, pg_documentdb, pg_documentdb_core';

Create this extension with:

CREATE EXTENSION documentdb_distributed CASCADE; -- requires citus, documentdb_core, documentdb

Usage

Sources:

documentdb_distributed is DocumentDB’s internal multi-node execution layer. It integrates the public documentdb API with Citus; it is not a standalone document API and does not add a separate client workflow.

Prerequisites and Install

All nodes need matching builds of Citus, documentdb_core, documentdb, and documentdb_distributed. The official helper places the libraries in preload order; restart every node after changing it:

shared_preload_libraries = 'pg_cron, citus, pg_documentdb_core, pg_documentdb, pg_documentdb_distributed, pg_documentdb_extended_rum'

After the Citus topology and the base DocumentDB stack are configured, install the distributed component as a superuser:

CREATE EXTENSION documentdb CASCADE;
CREATE EXTENSION documentdb_extended_rum;
CREATE EXTENSION documentdb_distributed;

SELECT extname, extversion
FROM pg_extension
WHERE extname IN ('citus', 'documentdb_core', 'documentdb', 'documentdb_distributed');

Use the normal DocumentDB gateway or documentdb_api functions after installation. Collection placement, shard topology, worker availability, and metadata consistency must be managed as part of the cluster deployment.

Important Boundaries

  • The control file requires citus, documentdb_core, and documentdb and marks the extension superuser-only and non-relocatable.
  • documentdb_distributed supplies distributed planner and execution support to existing DocumentDB commands; it is not an alternative to the public API extension.
  • Release versions should remain synchronized across coordinators and workers before extension upgrades are attempted.
  • Backup, restore, failover, and rolling-upgrade procedures must include both Citus metadata and DocumentDB data.

This component lives under the upstream internal directory. Confirm that the selected distribution actually ships its control file, SQL and library before enabling it; a base DocumentDB package alone is not evidence of distributed-component availability. Keep Citus and all DocumentDB components on compatible builds.