diff --git a/tsl/src/data_node.c b/tsl/src/data_node.c index 14c96c477..3ced77051 100644 --- a/tsl/src/data_node.c +++ b/tsl/src/data_node.c @@ -109,6 +109,9 @@ get_database_info(Oid dbid, DbInfo *database) database->chartype = TextDatumGetCString(datum); #endif + database->collation = pstrdup(database->collation); + database->chartype = pstrdup(database->chartype); + ReleaseSysCache(dbtuple); return true; } diff --git a/tsl/test/expected/data_node_bootstrap.out b/tsl/test/expected/data_node_bootstrap.out index 1e77181aa..f059430dd 100644 --- a/tsl/test/expected/data_node_bootstrap.out +++ b/tsl/test/expected/data_node_bootstrap.out @@ -23,12 +23,9 @@ SELECT * FROM add_data_node('bootstrap_test', host => 'localhost', database => ' -- Ensure database and extensions are installed and have the correct -- encoding, ctype and collation. \c bootstrap_test :ROLE_CLUSTER_SUPERUSER; -SELECT extname, nspname -FROM pg_extension e, pg_namespace n -WHERE e.extnamespace = n.oid -AND e.extname = 'timescaledb'; - extname | nspname --------------+--------- +SELECT extname, extnamespace::regnamespace FROM pg_extension e WHERE extname = 'timescaledb'; + extname | extnamespace +-------------+-------------- timescaledb | public (1 row) @@ -57,12 +54,9 @@ SELECT * FROM show_data_nodes(); (0 rows) \c bootstrap_test :ROLE_CLUSTER_SUPERUSER; -SELECT extname, nspname -FROM pg_extension e, pg_namespace n -WHERE e.extnamespace = n.oid -AND e.extname = 'timescaledb'; - extname | nspname --------------+--------- +SELECT extname, extnamespace::regnamespace FROM pg_extension e WHERE extname = 'timescaledb'; + extname | extnamespace +-------------+-------------- timescaledb | public (1 row) diff --git a/tsl/test/sql/data_node_bootstrap.sql b/tsl/test/sql/data_node_bootstrap.sql index 331f80904..29ffa1e2b 100644 --- a/tsl/test/sql/data_node_bootstrap.sql +++ b/tsl/test/sql/data_node_bootstrap.sql @@ -23,10 +23,7 @@ SELECT * FROM add_data_node('bootstrap_test', host => 'localhost', database => ' -- Ensure database and extensions are installed and have the correct -- encoding, ctype and collation. \c bootstrap_test :ROLE_CLUSTER_SUPERUSER; -SELECT extname, nspname -FROM pg_extension e, pg_namespace n -WHERE e.extnamespace = n.oid -AND e.extname = 'timescaledb'; +SELECT extname, extnamespace::regnamespace FROM pg_extension e WHERE extname = 'timescaledb'; SELECT PG_ENCODING_TO_CHAR(encoding) = :enc , datcollate = :coll , datctype = :ctype @@ -41,10 +38,7 @@ SELECT * FROM show_data_nodes(); \c bootstrap_test :ROLE_CLUSTER_SUPERUSER; -SELECT extname, nspname -FROM pg_extension e, pg_namespace n -WHERE e.extnamespace = n.oid -AND e.extname = 'timescaledb'; +SELECT extname, extnamespace::regnamespace FROM pg_extension e WHERE extname = 'timescaledb'; \c :TEST_DBNAME :ROLE_CLUSTER_SUPERUSER; \set ON_ERROR_STOP 0