Skip to content

Releases: willibrandon/pglogical

pglogical 2.5.3

Choose a tag to compare

@github-actions github-actions released this 10 Jan 14:38
5dabf03

pglogical 2.5.3

Bug Fixes

Fixed rapid manager worker cycling for databases without pglogical extension

When pglogical is loaded via shared_preload_libraries, manager workers were rapidly cycling (start, exit, restart) for databases that do not have the pglogical extension installed. This caused excessive log noise and wasted system resources.

Symptoms:

  • Log messages like manager worker [PID] at slot N generation G detaching cleanly repeating constantly
  • Generation counter incrementing rapidly (hundreds per minute)
  • High CPU usage from worker process churn

Fix: Manager workers now set a flag before exiting due to missing extension, preventing the supervisor from being woken immediately. The supervisor will restart managers on its normal timeout (30s on Windows, 180s on Unix) instead of immediately, eliminating the rapid cycling.


Installation

Linux

# Download and extract
tar -xzf pglogical-2.5.3-pg17-linux-x64.tar.gz
cd pglogical-2.5.3-pg17-linux-x64

# Install (uses pg_config to find PostgreSQL directories)
./install.sh

macOS

# Download and extract
tar -xzf pglogical-2.5.3-pg17-macos-arm64.tar.gz
cd pglogical-2.5.3-pg17-macos-arm64

# Install
./install.sh

Windows (MSI Installer)

  1. Download the MSI for your PostgreSQL version
  2. Run the installer - it will auto-detect PostgreSQL location
  3. Or use the ZIP package and copy files manually

Windows (ZIP Package)

  1. Extract the ZIP to a temporary location
  2. Copy files from lib/ to your PostgreSQL lib directory
  3. Copy files from share/extension/ to your PostgreSQL share/extension directory

Configuration (postgresql.conf)

wal_level = 'logical'
max_worker_processes = 10
max_replication_slots = 10
max_wal_senders = 10
shared_preload_libraries = 'pglogical'

Restart PostgreSQL after changing these settings.

Enable the Extension

CREATE EXTENSION pglogical;

Verify Checksums

Download checksums.txt and verify your download:

sha256sum -c checksums.txt --ignore-missing

Supported Platforms

  • Linux x64 (Ubuntu, Debian, RHEL, CentOS)
  • Windows x64 (Windows 10, Windows 11, Windows Server 2019+)
  • macOS ARM64 (Apple Silicon)

PostgreSQL Versions

  • PostgreSQL 15, 16, 17, 18

What's Changed

  • fix(worker): prevent rapid manager cycling for databases without extension by @willibrandon in #3

Full Changelog: v2.5.2...v2.5.3

pglogical 2.5.2

Choose a tag to compare

@github-actions github-actions released this 10 Jan 11:26

pglogical 2.5.2

Bug Fixes

  • Windows MSI Installer: Fixed MSI installer build to produce valid 64-bit packages. Previous releases generated MSI files that Windows Installer could not open.

Installation

Linux

# Download and extract
tar -xzf pglogical-2.5.2-pg17-linux-x64.tar.gz
cd pglogical-2.5.2-pg17-linux-x64

# Install (uses pg_config to find PostgreSQL directories)
./install.sh

macOS

# Download and extract
tar -xzf pglogical-2.5.2-pg17-macos-arm64.tar.gz
cd pglogical-2.5.2-pg17-macos-arm64

# Install
./install.sh

Windows (MSI Installer)

  1. Download the MSI for your PostgreSQL version
  2. Run the installer - it will auto-detect PostgreSQL location
  3. Or use the ZIP package and copy files manually

Windows (ZIP Package)

  1. Extract the ZIP to a temporary location
  2. Copy files from lib/ to your PostgreSQL lib directory
  3. Copy files from share/extension/ to your PostgreSQL share/extension directory

Configuration (postgresql.conf)

wal_level = 'logical'
max_worker_processes = 10
max_replication_slots = 10
max_wal_senders = 10
shared_preload_libraries = 'pglogical'

Restart PostgreSQL after changing these settings.

Enable the Extension

CREATE EXTENSION pglogical;

Verify Checksums

Download checksums.txt and verify your download:

sha256sum -c checksums.txt --ignore-missing

Supported Platforms

  • Linux x64 (Ubuntu, Debian, RHEL, CentOS)
  • Windows x64 (Windows 10, Windows 11, Windows Server 2019+)
  • macOS ARM64 (Apple Silicon)

PostgreSQL Versions

  • PostgreSQL 15, 16, 17, 18

Full Changelog: v2.5.1...v2.5.2

pglogical 2.5.1

Choose a tag to compare

@github-actions github-actions released this 09 Jan 01:25

pglogical 2.5.1

What's New

pglogical_create_subscriber now included in release packages

The pglogical_create_subscriber utility is now bundled with all release packages:

  • Linux/macOS tar.gz: Executable located in bin/pglogical_create_subscriber
  • Windows ZIP: Executable located in bin\pglogical_create_subscriber.exe
  • Windows MSI: Automatically installed to PostgreSQL's bin directory

The install.sh script on Unix platforms now installs executables from the package's bin/ directory to PostgreSQL's bin directory (detected via pg_config --bindir).

This utility creates a new PostgreSQL instance ready to be a pglogical subscriber by cloning an existing provider node using pg_basebackup.

Installation

Linux

# Download and extract
tar -xzf pglogical-2.5.1-pg17-linux-x64.tar.gz
cd pglogical-2.5.1-pg17-linux-x64

# Install (uses pg_config to find PostgreSQL directories)
./install.sh

macOS

# Download and extract
tar -xzf pglogical-2.5.1-pg17-macos-arm64.tar.gz
cd pglogical-2.5.1-pg17-macos-arm64

# Install
./install.sh

Windows (MSI Installer)

  1. Download the MSI for your PostgreSQL version
  2. Run the installer - it will auto-detect PostgreSQL location
  3. Or use the ZIP package and copy files manually

Windows (ZIP Package)

  1. Extract the ZIP to a temporary location
  2. Copy files from lib/ to your PostgreSQL lib directory
  3. Copy files from share/extension/ to your PostgreSQL share/extension directory
  4. Copy files from bin/ to your PostgreSQL bin directory

Configuration (postgresql.conf)

wal_level = 'logical'
max_worker_processes = 10
max_replication_slots = 10
max_wal_senders = 10
shared_preload_libraries = 'pglogical'

Restart PostgreSQL after changing these settings.

Enable the Extension

CREATE EXTENSION pglogical;

Verify Checksums

Download checksums.txt and verify your download:

sha256sum -c checksums.txt --ignore-missing

Supported Platforms

  • Linux x64 (Ubuntu, Debian, RHEL, CentOS)
  • Windows x64 (Windows 10, Windows 11, Windows Server 2019+)
  • macOS ARM64 (Apple Silicon)

PostgreSQL Versions

  • PostgreSQL 15, 16, 17, 18

Full Changelog: v2.5.0...v2.5.1

pglogical 2.5.0

Choose a tag to compare

@github-actions github-actions released this 08 Jan 16:58

pglogical 2.5.0

Version 2.5.0 adds Windows support, conflict history tracking, and pre-built binaries.

Changes

  • Windows support: Native Windows builds via CMake and MSVC. Pre-built MSI installers with automatic PostgreSQL path detection and manual directory selection.

  • Pre-built binaries: Download ready-to-install packages from GitHub Releases for Windows (MSI/ZIP), Linux (tar.gz), and macOS ARM64 (tar.gz). Supports PostgreSQL 15-18.

  • Conflict history table: New pglogical.conflict_history table records all detected conflicts with resolution details, enabling post-hoc analysis and debugging.

  • Generated columns: Logical replication now handles generated columns correctly.

  • Fix table sync timeout during catchup phase.

Installation

Linux

# Download and extract
tar -xzf pglogical-2.5.0-pg17-linux-x64.tar.gz
cd pglogical-2.5.0-pg17-linux-x64

# Install (uses pg_config to find PostgreSQL directories)
./install.sh

macOS

# Download and extract
tar -xzf pglogical-2.5.0-pg17-macos-arm64.tar.gz
cd pglogical-2.5.0-pg17-macos-arm64

# Install
./install.sh

Windows (MSI Installer)

  1. Download the MSI for your PostgreSQL version
  2. Run the installer - it will auto-detect PostgreSQL location or allow manual directory selection
  3. Or use the ZIP package and copy files manually

Windows (ZIP Package)

  1. Extract the ZIP to a temporary location
  2. Copy files from lib/ to your PostgreSQL lib directory
  3. Copy files from share/extension/ to your PostgreSQL share/extension directory

Configuration (postgresql.conf)

wal_level = 'logical'
max_worker_processes = 10
max_replication_slots = 10
max_wal_senders = 10
shared_preload_libraries = 'pglogical'

Restart PostgreSQL after changing these settings.

Enable the Extension

CREATE EXTENSION pglogical;

Verify Checksums

Download checksums.txt and verify your download:

sha256sum -c checksums.txt --ignore-missing

Supported Platforms

  • Linux x64 (Ubuntu, Debian, RHEL, CentOS)
  • Windows x64 (Windows 10, Windows 11, Windows Server 2019+)
  • macOS ARM64 (Apple Silicon)

PostgreSQL Versions

  • PostgreSQL 15, 16, 17, 18

Full Changelog: 2ndQuadrant/pglogical@REL2_x_STABLE...willibrandon:pglogical:v2.5.0

PostgreSQL Windows Binaries

Choose a tag to compare

@willibrandon willibrandon released this 08 Jan 16:00
76a514b

Pre-packaged PostgreSQL Windows x64 binaries for CI builds. Downloaded from EDB and repackaged for fast CI downloads.