pg.ddx.io pgsql-committers@postgresql.org mailing list archivehelp / color / mirror / Atom feed
pgsql: Fix StatisticsObjIsVisibleExt() for pg_temp. 7+ messages / 1 participants [nested] [flat]
* pgsql: Fix StatisticsObjIsVisibleExt() for pg_temp. @ 2025-09-29 18:16 Noah Misch <noah@leadboat.com> 0 siblings, 0 replies; 7+ messages in thread From: Noah Misch @ 2025-09-29 18:16 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Fix StatisticsObjIsVisibleExt() for pg_temp. Neighbor get_statistics_object_oid() ignores objects in pg_temp, as has been the standard for non-relation, non-type namespace searches since CVE-2007-2138. Hence, most operations that name a statistics object correctly decline to map an unqualified name to a statistics object in pg_temp. StatisticsObjIsVisibleExt() did not. Consequently, pg_statistics_obj_is_visible() wrongly returned true for such objects, psql \dX wrongly listed them, and getObjectDescription()-based ereport() and pg_describe_object() wrongly omitted namespace qualification. Any malfunction beyond that would depend on how a human or application acts on those wrong indications. Commit d99d58cdc8c0b5b50ee92995e8575c100b1a458a introduced this. Back-patch to v13 (all supported versions). Reviewed-by: Nathan Bossart <nathandbossart@gmail.com> Discussion: https://postgr.es/m/20250920162116.2e.nmisch@google.com Backpatch-through: 13 Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/a95393ecdb23563bd47eeb2c943640c88592d82b Modified Files -------------- src/backend/catalog/namespace.c | 3 +++ src/test/regress/expected/stats_ext.out | 14 ++++++++++++++ src/test/regress/sql/stats_ext.sql | 8 ++++++++ 3 files changed, 25 insertions(+) ^ permalink raw reply [nested|flat] 7+ messages in thread
* pgsql: Fix StatisticsObjIsVisibleExt() for pg_temp. @ 2025-09-29 18:16 Noah Misch <noah@leadboat.com> 0 siblings, 0 replies; 7+ messages in thread From: Noah Misch @ 2025-09-29 18:16 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Fix StatisticsObjIsVisibleExt() for pg_temp. Neighbor get_statistics_object_oid() ignores objects in pg_temp, as has been the standard for non-relation, non-type namespace searches since CVE-2007-2138. Hence, most operations that name a statistics object correctly decline to map an unqualified name to a statistics object in pg_temp. StatisticsObjIsVisibleExt() did not. Consequently, pg_statistics_obj_is_visible() wrongly returned true for such objects, psql \dX wrongly listed them, and getObjectDescription()-based ereport() and pg_describe_object() wrongly omitted namespace qualification. Any malfunction beyond that would depend on how a human or application acts on those wrong indications. Commit d99d58cdc8c0b5b50ee92995e8575c100b1a458a introduced this. Back-patch to v13 (all supported versions). Reviewed-by: Nathan Bossart <nathandbossart@gmail.com> Discussion: https://postgr.es/m/20250920162116.2e.nmisch@google.com Backpatch-through: 13 Branch ------ REL_18_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/d024160fffc8065b9b007c6be1b5f907eb2122c9 Modified Files -------------- src/backend/catalog/namespace.c | 3 +++ src/test/regress/expected/stats_ext.out | 14 ++++++++++++++ src/test/regress/sql/stats_ext.sql | 8 ++++++++ 3 files changed, 25 insertions(+) ^ permalink raw reply [nested|flat] 7+ messages in thread
* pgsql: Fix StatisticsObjIsVisibleExt() for pg_temp. @ 2025-09-29 18:16 Noah Misch <noah@leadboat.com> 0 siblings, 0 replies; 7+ messages in thread From: Noah Misch @ 2025-09-29 18:16 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Fix StatisticsObjIsVisibleExt() for pg_temp. Neighbor get_statistics_object_oid() ignores objects in pg_temp, as has been the standard for non-relation, non-type namespace searches since CVE-2007-2138. Hence, most operations that name a statistics object correctly decline to map an unqualified name to a statistics object in pg_temp. StatisticsObjIsVisibleExt() did not. Consequently, pg_statistics_obj_is_visible() wrongly returned true for such objects, psql \dX wrongly listed them, and getObjectDescription()-based ereport() and pg_describe_object() wrongly omitted namespace qualification. Any malfunction beyond that would depend on how a human or application acts on those wrong indications. Commit d99d58cdc8c0b5b50ee92995e8575c100b1a458a introduced this. Back-patch to v13 (all supported versions). Reviewed-by: Nathan Bossart <nathandbossart@gmail.com> Discussion: https://postgr.es/m/20250920162116.2e.nmisch@google.com Backpatch-through: 13 Branch ------ REL_17_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/6778fbca63c9efffefee8086914cef8428c4ccad Modified Files -------------- src/backend/catalog/namespace.c | 3 +++ src/test/regress/expected/stats_ext.out | 14 ++++++++++++++ src/test/regress/sql/stats_ext.sql | 8 ++++++++ 3 files changed, 25 insertions(+) ^ permalink raw reply [nested|flat] 7+ messages in thread
* pgsql: Fix StatisticsObjIsVisibleExt() for pg_temp. @ 2025-09-29 18:16 Noah Misch <noah@leadboat.com> 0 siblings, 0 replies; 7+ messages in thread From: Noah Misch @ 2025-09-29 18:16 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Fix StatisticsObjIsVisibleExt() for pg_temp. Neighbor get_statistics_object_oid() ignores objects in pg_temp, as has been the standard for non-relation, non-type namespace searches since CVE-2007-2138. Hence, most operations that name a statistics object correctly decline to map an unqualified name to a statistics object in pg_temp. StatisticsObjIsVisibleExt() did not. Consequently, pg_statistics_obj_is_visible() wrongly returned true for such objects, psql \dX wrongly listed them, and getObjectDescription()-based ereport() and pg_describe_object() wrongly omitted namespace qualification. Any malfunction beyond that would depend on how a human or application acts on those wrong indications. Commit d99d58cdc8c0b5b50ee92995e8575c100b1a458a introduced this. Back-patch to v13 (all supported versions). Reviewed-by: Nathan Bossart <nathandbossart@gmail.com> Discussion: https://postgr.es/m/20250920162116.2e.nmisch@google.com Backpatch-through: 13 Branch ------ REL_16_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/ab16418ee0ecc9632436f085b09af73ed2444091 Modified Files -------------- src/backend/catalog/namespace.c | 3 +++ src/test/regress/expected/stats_ext.out | 14 ++++++++++++++ src/test/regress/sql/stats_ext.sql | 8 ++++++++ 3 files changed, 25 insertions(+) ^ permalink raw reply [nested|flat] 7+ messages in thread
* pgsql: Fix StatisticsObjIsVisibleExt() for pg_temp. @ 2025-09-29 18:16 Noah Misch <noah@leadboat.com> 0 siblings, 0 replies; 7+ messages in thread From: Noah Misch @ 2025-09-29 18:16 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Fix StatisticsObjIsVisibleExt() for pg_temp. Neighbor get_statistics_object_oid() ignores objects in pg_temp, as has been the standard for non-relation, non-type namespace searches since CVE-2007-2138. Hence, most operations that name a statistics object correctly decline to map an unqualified name to a statistics object in pg_temp. StatisticsObjIsVisibleExt() did not. Consequently, pg_statistics_obj_is_visible() wrongly returned true for such objects, psql \dX wrongly listed them, and getObjectDescription()-based ereport() and pg_describe_object() wrongly omitted namespace qualification. Any malfunction beyond that would depend on how a human or application acts on those wrong indications. Commit d99d58cdc8c0b5b50ee92995e8575c100b1a458a introduced this. Back-patch to v13 (all supported versions). Reviewed-by: Nathan Bossart <nathandbossart@gmail.com> Discussion: https://postgr.es/m/20250920162116.2e.nmisch@google.com Backpatch-through: 13 Branch ------ REL_15_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/d202ec1fb29d5307ab7783f00eaa206bb1f1345d Modified Files -------------- src/backend/catalog/namespace.c | 3 +++ src/test/regress/expected/stats_ext.out | 14 ++++++++++++++ src/test/regress/sql/stats_ext.sql | 8 ++++++++ 3 files changed, 25 insertions(+) ^ permalink raw reply [nested|flat] 7+ messages in thread
* pgsql: Fix StatisticsObjIsVisibleExt() for pg_temp. @ 2025-09-29 18:16 Noah Misch <noah@leadboat.com> 0 siblings, 0 replies; 7+ messages in thread From: Noah Misch @ 2025-09-29 18:16 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Fix StatisticsObjIsVisibleExt() for pg_temp. Neighbor get_statistics_object_oid() ignores objects in pg_temp, as has been the standard for non-relation, non-type namespace searches since CVE-2007-2138. Hence, most operations that name a statistics object correctly decline to map an unqualified name to a statistics object in pg_temp. StatisticsObjIsVisibleExt() did not. Consequently, pg_statistics_obj_is_visible() wrongly returned true for such objects, psql \dX wrongly listed them, and getObjectDescription()-based ereport() and pg_describe_object() wrongly omitted namespace qualification. Any malfunction beyond that would depend on how a human or application acts on those wrong indications. Commit d99d58cdc8c0b5b50ee92995e8575c100b1a458a introduced this. Back-patch to v13 (all supported versions). Reviewed-by: Nathan Bossart <nathandbossart@gmail.com> Discussion: https://postgr.es/m/20250920162116.2e.nmisch@google.com Backpatch-through: 13 Branch ------ REL_14_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/5816baa9bcf3db6cb98e689dabe06276aa8fb3f2 Modified Files -------------- src/backend/catalog/namespace.c | 3 +++ src/test/regress/expected/stats_ext.out | 14 ++++++++++++++ src/test/regress/sql/stats_ext.sql | 8 ++++++++ 3 files changed, 25 insertions(+) ^ permalink raw reply [nested|flat] 7+ messages in thread
* pgsql: Fix StatisticsObjIsVisibleExt() for pg_temp. @ 2025-09-29 18:16 Noah Misch <noah@leadboat.com> 0 siblings, 0 replies; 7+ messages in thread From: Noah Misch @ 2025-09-29 18:16 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Fix StatisticsObjIsVisibleExt() for pg_temp. Neighbor get_statistics_object_oid() ignores objects in pg_temp, as has been the standard for non-relation, non-type namespace searches since CVE-2007-2138. Hence, most operations that name a statistics object correctly decline to map an unqualified name to a statistics object in pg_temp. StatisticsObjIsVisibleExt() did not. Consequently, pg_statistics_obj_is_visible() wrongly returned true for such objects, psql \dX wrongly listed them, and getObjectDescription()-based ereport() and pg_describe_object() wrongly omitted namespace qualification. Any malfunction beyond that would depend on how a human or application acts on those wrong indications. Commit d99d58cdc8c0b5b50ee92995e8575c100b1a458a introduced this. Back-patch to v13 (all supported versions). Reviewed-by: Nathan Bossart <nathandbossart@gmail.com> Discussion: https://postgr.es/m/20250920162116.2e.nmisch@google.com Backpatch-through: 13 Branch ------ REL_13_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/afb2cce743d4455f9ef88373cffcdadaf0600352 Modified Files -------------- src/backend/catalog/namespace.c | 3 +++ src/test/regress/expected/stats_ext.out | 14 ++++++++++++++ src/test/regress/sql/stats_ext.sql | 8 ++++++++ 3 files changed, 25 insertions(+) ^ permalink raw reply [nested|flat] 7+ messages in thread
end of thread, other threads:[~2025-09-29 18:16 UTC | newest] Thread overview: 7+ messages (download: mbox mbox.gz follow: Atom feed) -- links below jump to the message on this page -- 2025-09-29 18:16 pgsql: Fix StatisticsObjIsVisibleExt() for pg_temp. Noah Misch <noah@leadboat.com> 2025-09-29 18:16 pgsql: Fix StatisticsObjIsVisibleExt() for pg_temp. Noah Misch <noah@leadboat.com> 2025-09-29 18:16 pgsql: Fix StatisticsObjIsVisibleExt() for pg_temp. Noah Misch <noah@leadboat.com> 2025-09-29 18:16 pgsql: Fix StatisticsObjIsVisibleExt() for pg_temp. Noah Misch <noah@leadboat.com> 2025-09-29 18:16 pgsql: Fix StatisticsObjIsVisibleExt() for pg_temp. Noah Misch <noah@leadboat.com> 2025-09-29 18:16 pgsql: Fix StatisticsObjIsVisibleExt() for pg_temp. Noah Misch <noah@leadboat.com> 2025-09-29 18:16 pgsql: Fix StatisticsObjIsVisibleExt() for pg_temp. Noah Misch <noah@leadboat.com>
This inbox is served by DDX for PostgreSQL; see mirroring instructions for how to clone and mirror all data and code used for this inbox