Skip to content

Pg 18 compatibility#51

Merged
rapimo merged 4 commits into
masterfrom
pg_18_compatibility
Oct 30, 2025
Merged

Pg 18 compatibility#51
rapimo merged 4 commits into
masterfrom
pg_18_compatibility

Conversation

@rapimo

@rapimo rapimo commented Oct 14, 2025

Copy link
Copy Markdown
Member

@sschmidtadjust requested to ensure pg17 compatibility
ref https://adjustcom.atlassian.net/browse/DB-1822

@rapimo

rapimo commented Oct 14, 2025

Copy link
Copy Markdown
Member Author

@PerikAdjust maybe you can have a look into the build farm? Not sure where it fails there and if it ever worked properly.

@rapimo rapimo requested a review from PerikAdjust October 14, 2025 11:39
@PerikAdjust

Copy link
Copy Markdown
Contributor

I think you can first remove ci_dockerfile.yml we don't need it if we have ci.yml (the one that you update).
Because the failing checks come from the previous workflows I think

@rapimo rapimo force-pushed the pg_18_compatibility branch 2 times, most recently from eac2fc8 to 20b6a2f Compare October 29, 2025 15:14
pg 17 and 18 added additional parameters to create_foreignscan_path
namely `int disabled_nodes` (pg18) and `List *fdw_restrictinfo` (pg17)
which we both don't use for the moment.

rename static json_categorize_type to kafka_json_categorize_type

in pg 17 `json_categorize_type` became part of the public api while
we could use it but still need a static version for older versions
anyway, so we simply maintain our own version for now.

similar datum_to_json is now public with different signature

remove tuplestore_donestoring

actually `tuplestore_donestoring` was never needed and got removed in pg17
ref postgres/postgres@75680c3
    postgres/postgres@dd04e95

add alternative explain output for kafka_test.out

some EXPLAIN output changed in pg17 and pg18 and went into
alternative output files

avoid shadow variable errors

if compiled with -Wshadow=compatible-local we might see warning within the
PG_TRY CATCH machinery, this can be avoided by using variable suffixes introduced in pg16
the `INT64_FORMAT` macro takes care for the right formatspecifier
of an int64 (typically long long or long)
Starting with Apache Kafka 2.2.0, a new argument was introduced:
```
--bootstrap-server <broker:port>
```

which connects directly to Kafka brokers instead of ZooKeeper.

Then, from Kafka 3.0.0 onward, ZooKeeper-based options (`--zookeeper`)
became deprecated.
And from Kafka 4.0.0, ZooKeeper will be completely removed.
@rapimo rapimo force-pushed the pg_18_compatibility branch from 037875b to 15d4468 Compare October 29, 2025 21:19
@rapimo rapimo merged commit 8615082 into master Oct 30, 2025
9 checks passed
This was referenced Oct 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants