kafgres
Overview
| Package | Version | Category | License | Language |
|---|---|---|---|---|
kafgres | 0.3.0 | SIM | Elastic-2.0 | Rust |
| ID | Extension | Bin | Lib | Load | Create | Trust | Reloc | Schema |
|---|---|---|---|---|---|---|---|---|
| 9440 | kafgres | No | Yes | Yes | Yes | No | No | - |
PGSTY targets PG16; requires preload and broker readiness before topic SQL; segment logs need separate replication and archiving.
Version
| Type | Repo | Version | PG Ver | Package | Deps |
|---|---|---|---|---|---|
| EXT | PIGSTY | 0.3.0 | 1817161514 | kafgres | - |
| RPM | PIGSTY | 0.3.0 | 1817161514 | kafgres_$v | - |
| DEB | PIGSTY | 0.3.0 | 1817161514 | postgresql-$v-kafgres | - |
| OS / PG | PG18 | PG17 | PG16 | PG15 | PG14 |
|---|---|---|---|---|---|
| el8.x86_64 | N/A | N/A | PIGSTY 0.3.0 el8.x86_64.pg16 : kafgres_16 kafgres_16-0.3.0-1PGSTY.el8.x86_64.rpm
| N/A | N/A |
| el8.aarch64 | N/A | N/A | PIGSTY 0.3.0 el8.aarch64.pg16 : kafgres_16 kafgres_16-0.3.0-1PGSTY.el8.aarch64.rpm
| N/A | N/A |
| el9.x86_64 | N/A | N/A | PIGSTY 0.3.0 el9.x86_64.pg16 : kafgres_16 kafgres_16-0.3.0-1PGSTY.el9.x86_64.rpm
| N/A | N/A |
| el9.aarch64 | N/A | N/A | PIGSTY 0.3.0 el9.aarch64.pg16 : kafgres_16 kafgres_16-0.3.0-1PGSTY.el9.aarch64.rpm
| N/A | N/A |
| el10.x86_64 | N/A | N/A | PIGSTY 0.3.0 el10.x86_64.pg16 : kafgres_16 kafgres_16-0.3.0-1PGSTY.el10.x86_64.rpm
| N/A | N/A |
| el10.aarch64 | N/A | N/A | PIGSTY 0.3.0 el10.aarch64.pg16 : kafgres_16 kafgres_16-0.3.0-1PGSTY.el10.aarch64.rpm
| N/A | N/A |
| d12.x86_64 | N/A | N/A | PIGSTY 0.3.0 d12.x86_64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~bookworm_amd64.deb
| N/A | N/A |
| d12.aarch64 | N/A | N/A | PIGSTY 0.3.0 d12.aarch64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~bookworm_arm64.deb
| N/A | N/A |
| d13.x86_64 | N/A | N/A | PIGSTY 0.3.0 d13.x86_64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~trixie_amd64.deb
| N/A | N/A |
| d13.aarch64 | N/A | N/A | PIGSTY 0.3.0 d13.aarch64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~trixie_arm64.deb
| N/A | N/A |
| u22.x86_64 | N/A | N/A | PIGSTY 0.3.0 u22.x86_64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~jammy_amd64.deb
| N/A | N/A |
| u22.aarch64 | N/A | N/A | PIGSTY 0.3.0 u22.aarch64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~jammy_arm64.deb
| N/A | N/A |
| u24.x86_64 | N/A | N/A | PIGSTY 0.3.0 u24.x86_64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~noble_amd64.deb
| N/A | N/A |
| u24.aarch64 | N/A | N/A | PIGSTY 0.3.0 u24.aarch64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~noble_arm64.deb
| N/A | N/A |
| u26.x86_64 | N/A | N/A | PIGSTY 0.3.0 u26.x86_64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~resolute_amd64.deb
| N/A | N/A |
| u26.aarch64 | N/A | N/A | PIGSTY 0.3.0 u26.aarch64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~resolute_arm64.deb
| N/A | N/A |
Build
You can build the RPM / DEB packages for kafgres using pig build:
Install
You can install kafgres directly. First, make sure the PGDG and PIGSTY repositories are added and enabled:
Install the extension using pig or apt/yum/dnf:
Preload:
Create Extension:
Usage
Sources:
kafgres embeds a Kafka protocol broker in PostgreSQL. Upstream release 0.3.0 targets PostgreSQL 16 using pgrx 0.16.1. It needs superuser installation, shared preload and a restart. Its license is Elastic License 2.0.
Enable the broker
Kafka clients connect to the configured broker port. SQL production participates in the caller’s transaction. Configure TLS, authentication and ACLs before exposing the listener beyond a trusted local environment.
Storage and CDC
kafgres.storage_engine defaults to segment; its log uses separate files and requires the extension’s replication and archive procedures. Configure kafgres.segment_archive_command and monitor kafgres_archive_status() before relying on segment retention and recovery. Ordinary PostgreSQL WAL/PITR does not cover the entire segment log. The table engine keeps its log in PostgreSQL tables; changing engines does not migrate existing records.
CDC additionally requires wal_level = logical; some PostgreSQL builds also require an output_plugin_libraries allowlist. Version 0.3.0 supports SQL CDC mappings with projection and filtering. Review the mapping and recovery procedures before deployment; the release artifacts target PostgreSQL 16, and Cargo feature names alone do not prove support for other majors.
Durability Settings
Version 0.3.0 defaults kafgres.fsync_before_ack to on and kafgres.relaxed_produce_commit to off. Relaxing the first can lose acknowledged segment records on a power failure; relaxing the second can lose the newest idempotent-producer state after a crash and permit duplicates after retries. These settings have narrower scope than transactional SQL production and do not apply uniformly to the table engine. Preserve the strict defaults until the durability tradeoff is deliberate.
Was this page helpful?
Thanks—your feedback helps us improve this page.
What got in the way? (optional)