From 2a4358975d8bb9193fda49efa0c91ec1ce38c2ff Mon Sep 17 00:00:00 2001 From: Madis Spiegel Date: Tue, 21 Jul 2026 14:04:30 +0300 Subject: [PATCH 1/6] PG version bump, GH action updates --- .github/workflows/ci.yml | 12 +++++++----- .github/workflows/release.yml | 25 +++++-------------------- 2 files changed, 12 insertions(+), 25 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 03d14fb..8415bc1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -12,19 +12,21 @@ on: jobs: linux: - name: "Ubuntu 20.04 + PostgreSQL ${{matrix.PGVER}}" - runs-on: ubuntu-20.04 + name: "Ubuntu + PostgreSQL ${{matrix.PGVER}}" + runs-on: ubuntu-latest strategy: matrix: - PGVER: [10, 11, 12, 13, 14] + PGVER: [14, 15, 16, 17, 18] steps: - name: "Checkout" - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: "InstallDB" run: | echo "::group::apt-get-update" - echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main ${{matrix.PGVER}}" \ + sudo install -d /etc/apt/keyrings + curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo gpg --dearmor -o /etc/apt/keyrings/postgresql.gpg + echo "deb [signed-by=/etc/apt/keyrings/postgresql.gpg] http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main ${{matrix.PGVER}}" \ | sudo tee /etc/apt/sources.list.d/pgdg.list sudo -nH apt-get -q update echo "::endgroup::" diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index d58f2f5..8ca9048 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -13,7 +13,7 @@ jobs: - name: Checkout code id: checkout - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Build tarball id: build @@ -28,25 +28,10 @@ jobs: echo "TGZ=${EXTENSION}-${EXT_VERSION}.tar.gz" >> $GITHUB_ENV - name: Create release - id: release - uses: actions/create-release@v1 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} - with: - tag_name: ${{github.ref}} - release_name: ${{github.event.repository.name}} v${{env.EXT_VERSION}} - body_path: docs/notes/v${{env.EXT_VERSION}}.md - draft: false - prerelease: false - - - name: Upload source - id: upload - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} - with: - upload_url: ${{steps.release.outputs.upload_url}} - asset_path: ${{env.TGZ}} - asset_name: ${{env.TGZ}} - asset_content_type: application/x-gzip + run: | + gh release create "${{github.ref}}" "${{env.TGZ}}" \ + --title "${{github.event.repository.name}} v${{env.EXT_VERSION}}" \ + --notes-file "docs/notes/v${{env.EXT_VERSION}}.md" From 17270662717b7fa3f49861a9789bdf636b90a6f4 Mon Sep 17 00:00:00 2001 From: Madis Spiegel Date: Tue, 21 Jul 2026 14:08:51 +0300 Subject: [PATCH 2/6] test pg14 only --- .github/workflows/ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8415bc1..e23fddc 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,7 +16,8 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - PGVER: [14, 15, 16, 17, 18] +# PGVER: [14, 15, 16, 17, 18] + PGVER: [14] steps: - name: "Checkout" uses: actions/checkout@v4 From 124ee184a5c6c81d8e7ed6b46d3fb689b82fd1dc Mon Sep 17 00:00:00 2001 From: Madis Spiegel Date: Tue, 21 Jul 2026 14:10:33 +0300 Subject: [PATCH 3/6] test pg16 only --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e23fddc..d3b5d69 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,7 +17,7 @@ jobs: strategy: matrix: # PGVER: [14, 15, 16, 17, 18] - PGVER: [14] + PGVER: [16] steps: - name: "Checkout" uses: actions/checkout@v4 From 92f82fb09fa4aea2d18a932f042a93de4541a241 Mon Sep 17 00:00:00 2001 From: Madis Spiegel Date: Tue, 21 Jul 2026 14:15:15 +0300 Subject: [PATCH 4/6] PG17 only test --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d3b5d69..894f9fc 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,7 +17,7 @@ jobs: strategy: matrix: # PGVER: [14, 15, 16, 17, 18] - PGVER: [16] + PGVER: [17] steps: - name: "Checkout" uses: actions/checkout@v4 From 402f1de3a0f67b855ee87838ba41641b4c3c3518 Mon Sep 17 00:00:00 2001 From: Madis Spiegel Date: Tue, 21 Jul 2026 14:16:30 +0300 Subject: [PATCH 5/6] test pg18 only --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 894f9fc..90cf1cf 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,7 +17,7 @@ jobs: strategy: matrix: # PGVER: [14, 15, 16, 17, 18] - PGVER: [17] + PGVER: [18] steps: - name: "Checkout" uses: actions/checkout@v4 From 654f4ea9673d7d9e902df5fb1aa3eb3a38f5b2db Mon Sep 17 00:00:00 2001 From: Madis Spiegel Date: Tue, 21 Jul 2026 14:28:00 +0300 Subject: [PATCH 6/6] PG18 support in regtests. NOT NULL constraints are now stored in pg_constraint catalog. --- .github/workflows/ci.yml | 3 +-- expected/londiste_create_part.out | 2 +- expected/londiste_create_part_1.out | 2 +- sql/londiste_create_part.sql | 2 +- 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 90cf1cf..8415bc1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,8 +16,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: -# PGVER: [14, 15, 16, 17, 18] - PGVER: [18] + PGVER: [14, 15, 16, 17, 18] steps: - name: "Checkout" uses: actions/checkout@v4 diff --git a/expected/londiste_create_part.out b/expected/londiste_create_part.out index a65b12d..cd6fcc1 100644 --- a/expected/londiste_create_part.out +++ b/expected/londiste_create_part.out @@ -48,7 +48,7 @@ select count(*) from pg_indexes where schemaname='public' and tablename = 'event 2 (1 row) -select count(*) from pg_constraint where conrelid = 'public.events_2011_01'::regclass; +select count(*) from pg_constraint where conrelid = 'public.events_2011_01'::regclass and contype != 'n'; count ------- 3 diff --git a/expected/londiste_create_part_1.out b/expected/londiste_create_part_1.out index f2835ab..9383954 100644 --- a/expected/londiste_create_part_1.out +++ b/expected/londiste_create_part_1.out @@ -48,7 +48,7 @@ select count(*) from pg_indexes where schemaname='public' and tablename = 'event 2 (1 row) -select count(*) from pg_constraint where conrelid = 'public.events_2011_01'::regclass; +select count(*) from pg_constraint where conrelid = 'public.events_2011_01'::regclass and contype != 'n'; count ------- 3 diff --git a/sql/londiste_create_part.sql b/sql/londiste_create_part.sql index f725cf2..d1306ab 100644 --- a/sql/londiste_create_part.sql +++ b/sql/londiste_create_part.sql @@ -42,7 +42,7 @@ select londiste.create_partition('events', 'events_2011_01', 'id', 'ctime', '201 select londiste.create_partition('events', 'events_2011_01', 'id', 'ctime', '2011-01-01'::timestamp, 'month'); select count(*) from pg_indexes where schemaname='public' and tablename = 'events_2011_01'; -select count(*) from pg_constraint where conrelid = 'public.events_2011_01'::regclass; +select count(*) from pg_constraint where conrelid = 'public.events_2011_01'::regclass and contype != 'n'; select count(*) from pg_rules where schemaname = 'public' and tablename = 'events_2011_01'; select trigger_name, event_manipulation, action_statement from information_schema.triggers