pg server does not show pg_catalog once remote session connected ?

37 views
Skip to first unread message

Roberto La Rosa

unread,
Mar 26, 2025, 12:15:10 PMMar 26
to H2 Database
Good morning all,

h2 version 2.3.232, server, pg

on a remote session (perl/php/js/...) once connected to pg port I don't see any pg_catalog.
As soon as I connect to tcp port by web console with ...database;mode=postgresql I can see pg_catalog and it also appear on the remote session and it all works fine.

I'm using remote sessions connected to pg port working with pg drivers that cant't assume specifying ...database;mode=postgresql in the url as it would be part of a regular dsn and mode is not a token recognized by the driver itself (DBD::Pg)

It was working on 1.3.xxx version, something changed since then ?

Thans a lot in advance for your help


Evgenij Ryazanov

unread,
Mar 26, 2025, 8:33:34 PMMar 26
to H2 Database
Hello!

Since H2 2.0.202 connection through PostgreSQL protocol automatically enables MODE=PostgreSQL, DATABASE_TO_LOWER=TRUE, and DEFAULT_NULL_ORDERING=HIGH settings.

But if you already have an embedded or TCP (using H2's own protocol) connection to the same database and this connection was created without these setting, you will not see the pg_catalog schema, it cannot be enabled on the fly. You need to close all remaining connections first (and possibly shutdown the database if you used a DB_CLOSE_DELAY setting).
Reply all
Reply to author
Forward
0 new messages