|
54 | 54 | --health-interval 10s |
55 | 55 | --health-timeout 5s |
56 | 56 | --health-retries 5 |
| 57 | + catalog2: |
| 58 | + image: imresamu/postgis:${{ matrix.db-version.pg }}-3.5-alpine |
| 59 | + ports: |
| 60 | + - 5437:5432 |
| 61 | + env: |
| 62 | + PGUSER: postgres |
| 63 | + POSTGRES_PASSWORD: postgres |
| 64 | + POSTGRES_DB: postgres |
| 65 | + POSTGRES_INITDB_ARGS: --locale=C.UTF-8 |
| 66 | + options: >- |
| 67 | + --health-cmd pg_isready |
| 68 | + --health-interval 10s |
| 69 | + --health-timeout 5s |
| 70 | + --health-retries 5 |
57 | 71 | redpanda: |
58 | 72 | image: redpandadata/redpanda@sha256:12ddbd8e5572210a48d39afecac44db61503ce1cbdae50ee9b1ff5998a8d91e1 |
59 | 73 | ports: |
@@ -111,11 +125,23 @@ jobs: |
111 | 125 | go-version: '1.26.2' |
112 | 126 | cache-dependency-path: flow/go.sum |
113 | 127 |
|
114 | | - - name: install lib-geos |
| 128 | + - name: install lib-geos and pg_dump |
115 | 129 | run: | |
116 | 130 | # No need to update man pages on package install |
117 | 131 | sudo apt-get remove --purge man-db |
118 | | - sudo apt-get install libgeos-dev |
| 132 | + # Add PGDG apt repo for latest PostgreSQL client packages |
| 133 | + sudo install -d /usr/share/postgresql-common/pgdg |
| 134 | + sudo curl -o /usr/share/postgresql-common/pgdg/apt.postgresql.org.asc \ |
| 135 | + --fail https://www.postgresql.org/media/keys/ACCC4CF8.asc |
| 136 | + echo "deb [signed-by=/usr/share/postgresql-common/pgdg/apt.postgresql.org.asc] \ |
| 137 | + https://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" \ |
| 138 | + | sudo tee /etc/apt/sources.list.d/pgdg.list |
| 139 | + sudo apt-get update |
| 140 | + sudo apt-get install -y libgeos-dev |
| 141 | + # pg_dump must be >= the server major version; install v18 so it |
| 142 | + # can dump PG 16, 17, and 18 (backward compatible). |
| 143 | + sudo apt-get install -y postgresql-client-18 |
| 144 | + echo /usr/lib/postgresql/18/bin >> $GITHUB_PATH |
119 | 145 |
|
120 | 146 | - name: install retry tool |
121 | 147 | run: | |
@@ -275,6 +301,17 @@ jobs: |
275 | 301 | env: |
276 | 302 | PGPASSWORD: postgres |
277 | 303 |
|
| 304 | + - name: prepare secondary postgres for cross-cluster schema-dump tests |
| 305 | + run: > |
| 306 | + docker exec "${{ job.services.catalog2.id }}" psql -U postgres |
| 307 | + -c "ALTER SYSTEM SET wal_level=logical;" |
| 308 | + -c "ALTER SYSTEM SET max_replication_slots=192;" |
| 309 | + -c "ALTER SYSTEM SET max_wal_senders=256;" |
| 310 | + -c "ALTER SYSTEM SET max_connections=2048;" && |
| 311 | + docker restart "${{ job.services.catalog2.id }}" |
| 312 | + env: |
| 313 | + PGPASSWORD: postgres |
| 314 | + |
278 | 315 | - name: set ClickHouse version |
279 | 316 | id: ch-version |
280 | 317 | run: | |
@@ -561,6 +598,11 @@ jobs: |
561 | 598 | PG_USER: postgres |
562 | 599 | PG_PASSWORD: postgres |
563 | 600 | PG_DATABASE: postgres |
| 601 | + PG2_HOST: localhost |
| 602 | + PG2_PORT: 5437 |
| 603 | + PG2_USER: postgres |
| 604 | + PG2_PASSWORD: postgres |
| 605 | + PG2_DATABASE: postgres |
564 | 606 | PEERDB_SWITCHBOARD_ENABLED: "true" |
565 | 607 | PEERDB_QUEUE_FORCE_TOPIC_CREATION: "true" |
566 | 608 | ELASTICSEARCH_TEST_ADDRESS: http://localhost:9200 |
|
0 commit comments