From: Fujii Masao Date: Mon, 6 Apr 2026 04:19:45 +0000 (+0900) Subject: Simplify redundant current_database() subqueries in stats.sql regression test X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d78a4f0bf058906c5cfd25c815ccbdf18013b312;p=thirdparty%2Fpostgresql.git Simplify redundant current_database() subqueries in stats.sql regression test Previously the stats.sql regression test used conditions like "datname = (SELECT current_database())" to check the current database name. The subquery is unnecessary, so this commit simplifies these expressions to "datname = current_database()". Author: Chao Li Reviewed-by: Fujii Masao Discussion: https://postgr.es/m/A1535A8F-65AF-4C3D-ACBE-25891CB5D38B@gmail.com --- diff --git a/src/test/regress/expected/stats.out b/src/test/regress/expected/stats.out index 35632f83052..55009cfcc7d 100644 --- a/src/test/regress/expected/stats.out +++ b/src/test/regress/expected/stats.out @@ -947,7 +947,7 @@ SELECT (n_tup_ins + n_tup_upd) > 0 AS has_data FROM pg_stat_all_tables -- Test that various stats views are being properly populated ----- -- Test that sessions is incremented when a new session is started in pg_stat_database -SELECT sessions AS db_stat_sessions FROM pg_stat_database WHERE datname = (SELECT current_database()) \gset +SELECT sessions AS db_stat_sessions FROM pg_stat_database WHERE datname = current_database() \gset \c SELECT pg_stat_force_next_flush(); pg_stat_force_next_flush @@ -955,7 +955,7 @@ SELECT pg_stat_force_next_flush(); (1 row) -SELECT sessions > :db_stat_sessions FROM pg_stat_database WHERE datname = (SELECT current_database()); +SELECT sessions > :db_stat_sessions FROM pg_stat_database WHERE datname = current_database(); ?column? ---------- t @@ -1157,8 +1157,8 @@ SELECT pg_stat_reset(); (1 row) -SELECT stats_reset AS db_reset_ts FROM pg_stat_database WHERE datname = (SELECT current_database()) \gset -SELECT stats_reset AS dbc_reset_ts FROM pg_stat_database_conflicts WHERE datname = (SELECT current_database()) \gset +SELECT stats_reset AS db_reset_ts FROM pg_stat_database WHERE datname = current_database() \gset +SELECT stats_reset AS dbc_reset_ts FROM pg_stat_database_conflicts WHERE datname = current_database() \gset SELECT :'db_reset_ts'::timestamptz = :'dbc_reset_ts'::timestamptz; ?column? ---------- @@ -1171,13 +1171,13 @@ SELECT pg_stat_reset(); (1 row) -SELECT stats_reset > :'db_reset_ts'::timestamptz FROM pg_stat_database WHERE datname = (SELECT current_database()); +SELECT stats_reset > :'db_reset_ts'::timestamptz FROM pg_stat_database WHERE datname = current_database(); ?column? ---------- t (1 row) -SELECT stats_reset > :'dbc_reset_ts'::timestamptz FROM pg_stat_database_conflicts WHERE datname = (SELECT current_database()); +SELECT stats_reset > :'dbc_reset_ts'::timestamptz FROM pg_stat_database_conflicts WHERE datname = current_database(); ?column? ---------- t diff --git a/src/test/regress/sql/stats.sql b/src/test/regress/sql/stats.sql index 65d8968c83e..158f3ca6ebe 100644 --- a/src/test/regress/sql/stats.sql +++ b/src/test/regress/sql/stats.sql @@ -432,10 +432,10 @@ SELECT (n_tup_ins + n_tup_upd) > 0 AS has_data FROM pg_stat_all_tables ----- -- Test that sessions is incremented when a new session is started in pg_stat_database -SELECT sessions AS db_stat_sessions FROM pg_stat_database WHERE datname = (SELECT current_database()) \gset +SELECT sessions AS db_stat_sessions FROM pg_stat_database WHERE datname = current_database() \gset \c SELECT pg_stat_force_next_flush(); -SELECT sessions > :db_stat_sessions FROM pg_stat_database WHERE datname = (SELECT current_database()); +SELECT sessions > :db_stat_sessions FROM pg_stat_database WHERE datname = current_database(); -- Test pg_stat_checkpointer checkpointer-related stats, together with pg_stat_wal SELECT num_requested AS rqst_ckpts_before FROM pg_stat_checkpointer \gset @@ -529,12 +529,12 @@ SELECT pg_stat_reset_shared('unknown'); -- have a baseline for comparison. The same for pg_stat_database_conflicts as it shares -- the same stats_reset as pg_stat_database. SELECT pg_stat_reset(); -SELECT stats_reset AS db_reset_ts FROM pg_stat_database WHERE datname = (SELECT current_database()) \gset -SELECT stats_reset AS dbc_reset_ts FROM pg_stat_database_conflicts WHERE datname = (SELECT current_database()) \gset +SELECT stats_reset AS db_reset_ts FROM pg_stat_database WHERE datname = current_database() \gset +SELECT stats_reset AS dbc_reset_ts FROM pg_stat_database_conflicts WHERE datname = current_database() \gset SELECT :'db_reset_ts'::timestamptz = :'dbc_reset_ts'::timestamptz; SELECT pg_stat_reset(); -SELECT stats_reset > :'db_reset_ts'::timestamptz FROM pg_stat_database WHERE datname = (SELECT current_database()); -SELECT stats_reset > :'dbc_reset_ts'::timestamptz FROM pg_stat_database_conflicts WHERE datname = (SELECT current_database()); +SELECT stats_reset > :'db_reset_ts'::timestamptz FROM pg_stat_database WHERE datname = current_database(); +SELECT stats_reset > :'dbc_reset_ts'::timestamptz FROM pg_stat_database_conflicts WHERE datname = current_database(); -- Test that reset works for pg_statio_all_sequences