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

oppenheimer01 pushed a commit to branch cbdb-postgres-merge
in repository https://gitbox.apache.org/repos/asf/cloudberry.git

commit cee6ce5a3c054899c82d6fb92ff3c913a88461db
Author: Jinbao Chen <[email protected]>
AuthorDate: Fri Apr 24 02:12:54 2026 +0000

    Remove guc lc_ctype
---
 gpMgmt/bin/Makefile                                  | 15 +++++++++++++--
 src/backend/utils/misc/guc_tables.c                  | 11 -----------
 src/include/utils/unsync_guc_name.h                  |  1 -
 src/test/regress/expected/cte_prune.out              | 12 ++++++------
 src/test/regress/expected/directory_table.out        |  2 +-
 src/test/regress/expected/external_table.out         |  6 +++++-
 src/test/regress/expected/gp_explain.out             |  2 +-
 src/test/regress/expected/partition_prune_append.out |  4 ++--
 src/test/regress/sql/external_table.sql              |  2 +-
 9 files changed, 29 insertions(+), 26 deletions(-)

diff --git a/gpMgmt/bin/Makefile b/gpMgmt/bin/Makefile
index c5eb6ccba9c..7092700b784 100644
--- a/gpMgmt/bin/Makefile
+++ b/gpMgmt/bin/Makefile
@@ -111,8 +111,19 @@ download-python-deps:
        else \
                echo "PyGreSQL-$(PYGRESQL_VERSION).tar.gz already exists, 
skipping download"; \
        fi
-       # Install wheel and cython for PyYAML building
-       pip3 install --user wheel "cython<3.0.0"
+       # Install wheel and cython for PyYAML building (only if not exists)
+       @if python3 -c "import wheel" >/dev/null 2>&1; then \
+               echo "wheel already exists, skipping installation"; \
+       else \
+               echo "Installing wheel..."; \
+               pip3 install --user wheel 2>/dev/null || pip3 install --user 
--break-system-packages wheel; \
+       fi
+       @if python3 -c "import cython" >/dev/null 2>&1; then \
+               echo "cython already exists, skipping installation"; \
+       else \
+               echo "Installing cython..."; \
+               pip3 install --user "cython<3.0.0" 2>/dev/null || pip3 install 
--user --break-system-packages "cython<3.0.0"; \
+       fi
 
 #
 # PyGreSQL
diff --git a/src/backend/utils/misc/guc_tables.c 
b/src/backend/utils/misc/guc_tables.c
index 9afcabcfb7d..fc85d28b097 100644
--- a/src/backend/utils/misc/guc_tables.c
+++ b/src/backend/utils/misc/guc_tables.c
@@ -4166,17 +4166,6 @@ struct config_string ConfigureNamesString[] =
                NULL, NULL, NULL
        },
 
-       {
-                       {"lc_ctype", PGC_INTERNAL, PRESET_OPTIONS,
-                                       gettext_noop("Shows the character 
classification and case conversion locale."),
-                                       NULL,
-                                       GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE
-                       },
-                       &locale_ctype,
-                       "C",
-                       NULL, NULL, NULL
-       },
-       
        /* See main.c about why defaults for LC_foo are not all alike */
 
        {
diff --git a/src/include/utils/unsync_guc_name.h 
b/src/include/utils/unsync_guc_name.h
index b42bfbe4132..e74955d0360 100644
--- a/src/include/utils/unsync_guc_name.h
+++ b/src/include/utils/unsync_guc_name.h
@@ -322,7 +322,6 @@
                "krb_caseins_users",
                "krb_server_keyfile",
                "lc_collate",
-               "lc_ctype",
                "listen_addresses",
                "local_preload_libraries",
                "lo_compat_privileges",
diff --git a/src/test/regress/expected/cte_prune.out 
b/src/test/regress/expected/cte_prune.out
index 957dd8b224c..bf0776c72eb 100644
--- a/src/test/regress/expected/cte_prune.out
+++ b/src/test/regress/expected/cte_prune.out
@@ -996,7 +996,7 @@ select t1.v1 from t1 where t1.v1 in (select item_sk from 
frequent_ss_items where
                                                                            
Output: tpcds_item_1.i_item_desc, tpcds_item_1.i_item_sk
                                                                            
Filter: (tpcds_item_1.i_item_sk > 0)
  Optimizer: Postgres query optimizer
-(88 rows)
+(89 rows)
 
 -- sql 95
 explain verbose with ws_wh as
@@ -1077,7 +1077,7 @@ select * from t1 where t1.v1 in (select ws_order_number 
from ws_wh where true) a
                                                                ->  Seq Scan on 
cte_prune.t1  (cost=0.00..1.03 rows=3 width=12)
                                                                      Output: 
t1.v1, t1.v2, t1.v3, RowIdExpr
  Optimizer: Postgres query optimizer
-(70 rows)
+(71 rows)
 
 explain verbose with ws_wh as
 (select ws1.ws_order_number,ws1.ws_warehouse_sk wh1,ws2.ws_warehouse_sk wh2
@@ -1158,7 +1158,7 @@ select * from t1 where t1.v1 in (select wh1 from ws_wh 
where true) and t1.v1 in
                                                                      ->  Seq 
Scan on cte_prune.t1  (cost=0.00..1.03 rows=3 width=12)
                                                                            
Output: t1.v1, t1.v2, t1.v3, RowIdExpr
  Optimizer: Postgres query optimizer
-(71 rows)
+(72 rows)
 
 -- start_ignore
 drop table tpcds_store_sales;
@@ -1269,7 +1269,7 @@ LIMIT 10;
                                                                                
                    ->  Seq Scan on cte_prune.t4 t4_1  (cost=0.00..1.03 rows=3 
width=8)
                                                                                
                          Output: t4_1.c, t4_1.d
  Optimizer: Postgres query optimizer
-(76 rows)
+(77 rows)
 
 WITH t(a,b,d) AS
 (
@@ -1496,7 +1496,7 @@ where country.percentage = countrylanguage.percentage 
order by countrylanguage.C
                                                                                
  Output: country_2.code, country_2.name, country_2.capital
                                                                                
  Filter: (country_2.continent = 'Europe'::text)
  Optimizer: Postgres query optimizer
-(75 rows)
+(76 rows)
 
 -- CTE in the main query and subqueries within the main query
 explain verbose with bad_headofstates as 
@@ -1624,7 +1624,7 @@ order by 
OUTERMOST_FOO.region,bad_headofstates.headofstate LIMIT 40;
                                                                                
        ->  Seq Scan on cte_prune.city  (cost=0.00..126.33 rows=9233 width=4)
                                                                                
              Output: city.id
  Optimizer: Postgres query optimizer
-(104 rows)
+(105 rows)
 
 -- start_ignore
 drop table city;
diff --git a/src/test/regress/expected/directory_table.out 
b/src/test/regress/expected/directory_table.out
index 207ed2a7022..0ca11409824 100644
--- a/src/test/regress/expected/directory_table.out
+++ b/src/test/regress/expected/directory_table.out
@@ -788,7 +788,7 @@ ERROR:  duplicate key value violates unique constraint 
"dir_table1_pkey"
 DETAIL:  Key (relative_path)=(nation1) already exists.
 COPY BINARY dir_table1 FROM :'nation_file' 'nation2' 'nation2'; -- fail
 ERROR:  syntax error at or near "'nation2'"
-LINE 1: ...berry/src/test/regress/data/nation.csv' 'nation2' 'nation2';
+LINE 1: ...rrydb/src/test/regress/data/nation.csv' 'nation2' 'nation2';
                                                              ^
 COPY BINARY dir_table1 FROM :'nation_file' 'nation2';
 NOTICE:  dir_table1 INSERT AFTER ROW  (seg2 127.0.1.1:7004 pid=900444)
diff --git a/src/test/regress/expected/external_table.out 
b/src/test/regress/expected/external_table.out
index 682028e3415..fbcf865ee7d 100644
--- a/src/test/regress/expected/external_table.out
+++ b/src/test/regress/expected/external_table.out
@@ -2804,7 +2804,7 @@ CREATE EXTERNAL TABLE ext_nation_on_coordinator ( 
N_NATIONKEY  INTEGER ,
                             N_NAME       CHAR(25) ,
                             N_REGIONKEY  INTEGER ,
                             N_COMMENT    VARCHAR(152))
-location ('file://@hostname@@abs_srcdir@/data/nation.tbl' ) ON COORDINATOR
+location (:'nation_tbl' ) ON COORDINATOR
 FORMAT 'text' (delimiter '|');
 SELECT gp_segment_id, * FROM ext_nation_on_coordinator ORDER BY N_NATIONKEY 
DESC LIMIT 5;
  gp_segment_id | n_nationkey |          n_name           | n_regionkey |       
                                            n_comment                           
                         
@@ -5212,3 +5212,7 @@ SELECT logerrors, options from pg_exttable a, pg_class b 
where a.reloid = b.oid
 DROP EXTERNAL TABLE ext_false;
 DROP EXTERNAL TABLE ext_true;
 DROP EXTERNAL TABLE ext_persistently;
+CREATE EXTERNAL WEB TEMP TABLE test_program_not_exist(content text) EXECUTE 
'/bin/bash /xx/seq 1 5' ON MASTER FORMAT 'TEXT';
+SELECT * FROM test_program_not_exist;
+ERROR:  external table test_program_not_exist command ended with error. 
/bin/bash: /xx/seq: No such file or directory
+DETAIL:  Command: execute:/bin/bash /xx/seq 1 5
diff --git a/src/test/regress/expected/gp_explain.out 
b/src/test/regress/expected/gp_explain.out
index d9304364e51..1ec1a50298c 100644
--- a/src/test/regress/expected/gp_explain.out
+++ b/src/test/regress/expected/gp_explain.out
@@ -608,7 +608,7 @@ SELECT * FROM y LIMIT 10;
                      ->  WorkTable Scan on y (never executed)
                      ->  Materialize (never executed)
                            ->  Gather Motion 3:1  (slice1; segments: 3) (never 
executed)
-                                 ->  Seq Scan on recursive_table_ic (actual 
rows=#### loops=1)
+                                 ->  Seq Scan on recursive_table_ic (actual 
rows=4049 loops=1)
  Optimizer: Postgres query optimizer
 (13 rows)
 
diff --git a/src/test/regress/expected/partition_prune_append.out 
b/src/test/regress/expected/partition_prune_append.out
index 68934130ab9..20730d90d0f 100644
--- a/src/test/regress/expected/partition_prune_append.out
+++ b/src/test/regress/expected/partition_prune_append.out
@@ -3953,7 +3953,7 @@ explain (costs off) update listp1 set a = 1 where a = 2;
          ->  Result
                ->  Redistribute Motion 3:3  (slice1; segments: 3)
                      Hash Key: a
-                     ->  Split
+                     ->  Split Update
                            ->  Seq Scan on listp1
                                  Filter: (a = 2)
  Optimizer: Pivotal Optimizer (GPORCA)
@@ -3979,7 +3979,7 @@ explain (costs off) update listp1 set a = 1 where a = 2;
          ->  Result
                ->  Redistribute Motion 3:3  (slice1; segments: 3)
                      Hash Key: a
-                     ->  Split
+                     ->  Split Update
                            ->  Seq Scan on listp1
                                  Filter: (a = 2)
  Optimizer: Pivotal Optimizer (GPORCA)
diff --git a/src/test/regress/sql/external_table.sql 
b/src/test/regress/sql/external_table.sql
index 048a27abd7c..231adb6dea6 100644
--- a/src/test/regress/sql/external_table.sql
+++ b/src/test/regress/sql/external_table.sql
@@ -1433,7 +1433,7 @@ CREATE EXTERNAL TABLE ext_nation_on_coordinator ( 
N_NATIONKEY  INTEGER ,
                             N_NAME       CHAR(25) ,
                             N_REGIONKEY  INTEGER ,
                             N_COMMENT    VARCHAR(152))
-location ('file://@hostname@@abs_srcdir@/data/nation.tbl' ) ON COORDINATOR
+location (:'nation_tbl' ) ON COORDINATOR
 FORMAT 'text' (delimiter '|');
 SELECT gp_segment_id, * FROM ext_nation_on_coordinator ORDER BY N_NATIONKEY 
DESC LIMIT 5;
 DROP EXTERNAL TABLE IF EXISTS ext_nation_on_coordinator;


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to