This is an automated email from the ASF dual-hosted git repository.

jgemignani pushed a commit to branch PG16
in repository https://gitbox.apache.org/repos/asf/age.git


The following commit(s) were added to refs/heads/PG16 by this push:
     new 1602c8ae Add EmitWarningsOnPlaceholders("age") (#2001)
1602c8ae is described below

commit 1602c8ae5a09bfba8301b55e5c006610e90ee5f6
Author: Shinya Kato <[email protected]>
AuthorDate: Thu Aug 8 07:44:20 2024 +0900

    Add EmitWarningsOnPlaceholders("age") (#2001)
    
    Added EmitWarningsOnPlaceholders("age") to warn when an undefined GUC 
parameter is set for a placeholder named "age".
    Warnings are issued when PostgreSQL starts and when SET statements are 
executed.
    
    When PostgreSQL starts
    ```
    2024-08-01 18:32:31.220 JST [2039799] WARNING: invalid configuration 
parameter name "age.invalid_parameter", removing it
    ```
    
    When SET statement is executed
    ```
    ERROR: invalid configuration parameter name "age.invalid_parameter"
    DETAIL: "age" is a reserved prefix.
    ```
    
    Regression tests were added.
---
 regress/expected/name_validation.out | 8 ++++++++
 regress/sql/name_validation.sql      | 7 +++++++
 src/backend/utils/ag_guc.c           | 1 +
 3 files changed, 16 insertions(+)

diff --git a/regress/expected/name_validation.out 
b/regress/expected/name_validation.out
index a9f80407..d0ba31ec 100644
--- a/regress/expected/name_validation.out
+++ b/regress/expected/name_validation.out
@@ -475,6 +475,14 @@ NOTICE:  graph "graph123" has been dropped
  
 (1 row)
 
+--
+-- Test GUC names
+--
+SET age.enable_containment TO ON;
+SET age.invalid_parameter TO ON;
+ERROR:  invalid configuration parameter name "age.invalid_parameter"
+DETAIL:  "age" is a reserved prefix.
+SET any_placeholder.any_parameter TO ON;
 --
 -- End of test
 --
diff --git a/regress/sql/name_validation.sql b/regress/sql/name_validation.sql
index 0c96a25f..acf78267 100644
--- a/regress/sql/name_validation.sql
+++ b/regress/sql/name_validation.sql
@@ -178,6 +178,13 @@ SELECT create_elabel('graph123', 
'elabel0123456789012345678901234567890123456789
 -- clean up
 SELECT drop_graph('graph123', true);
 
+--
+-- Test GUC names
+--
+SET age.enable_containment TO ON;
+SET age.invalid_parameter TO ON;
+SET any_placeholder.any_parameter TO ON;
+
 --
 -- End of test
 --
diff --git a/src/backend/utils/ag_guc.c b/src/backend/utils/ag_guc.c
index d9a99f66..86b4e00b 100644
--- a/src/backend/utils/ag_guc.c
+++ b/src/backend/utils/ag_guc.c
@@ -42,4 +42,5 @@ void define_config_params(void)
                              NULL,
                              NULL,
                              NULL);
+    EmitWarningsOnPlaceholders("age");
 }

Reply via email to