postgresql/src/include/utils
Jeff Davis 72fe6d24a3 Make collation not depend on setlocale().
Now that the result of pg_newlocale_from_collation() is always
non-NULL, then we can move the collate_is_c and ctype_is_c flags into
pg_locale_t. That simplifies the logic in lc_collate_is_c() and
lc_ctype_is_c(), removing the dependence on setlocale().

This commit also eliminates the multi-stage initialization of the
collation cache.

As long as we have catalog access, then it's now safe to call
pg_newlocale_from_collation() without checking lc_collate_is_c()
first.

Discussion: https://postgr.es/m/cfd9eb85-c52a-4ec9-a90e-a5e4de56e57d@eisentraut.org
Reviewed-by: Peter Eisentraut, Andreas Karlsson
2024-07-30 00:58:06 -07:00
..
.gitignore Generate automatically code and documentation related to wait events 2023-07-05 10:53:11 +09:00
acl.h Improve tracking of role dependencies of pg_init_privs entries. 2024-06-17 12:55:10 -04:00
aclchk_internal.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
array.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
arrayaccess.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
ascii.h Move is_valid_ascii() to ascii.h. 2024-01-29 12:08:57 -06:00
attoptcache.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
backend_progress.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
backend_status.h Revert "Add notBefore and notAfter to SSL cert info display" 2024-03-22 22:58:41 +01:00
builtins.h Adjust populate_record_field() to handle errors softly 2024-01-24 15:04:33 +09:00
bytea.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
cash.h Convert *GetDatum() and DatumGet*() macros to inline functions 2022-09-27 20:50:21 +02:00
catcache.h Use a hash table for catcache.c's CatCList objects. 2024-03-22 17:13:53 -04:00
combocid.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
conffiles.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
date.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
datetime.h Support TZ and OF format codes in to_timestamp(). 2024-01-25 17:47:08 -05:00
datum.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
dsa.h Allow specifying initial and maximum segment sizes for DSA. 2024-03-27 11:43:29 +09:00
dynahash.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
elog.h Remove obsolete check in SIGTERM handler for the startup process. 2024-02-14 17:09:31 -06:00
evtcache.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
expandeddatum.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
expandedrecord.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
float.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
fmgrtab.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
formatting.h Add SQL/JSON query functions 2024-03-21 17:07:03 +09:00
freepage.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
geo_decls.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
guc.h Move all extern declarations for GUC variables to header files 2024-07-24 06:31:07 +02:00
guc_hooks.h Remove check hooks for GUCs that contribute to MaxBackends. 2024-07-05 14:42:55 -05:00
guc_tables.h Rename COMPAT_OPTIONS_CLIENT to COMPAT_OPTIONS_OTHER. 2024-03-27 10:45:28 -04:00
help_config.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
hsearch.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
index_selfuncs.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
inet.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
injection_point.h Add test for early backend startup errors 2024-07-26 15:12:21 +03:00
inval.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
json.h Optimize escaping of JSON strings 2024-07-27 23:46:07 +12:00
jsonb.h Add SQL/JSON query functions 2024-03-21 17:07:03 +09:00
jsonfuncs.h SQL/JSON: Always coerce JsonExpr result at runtime 2024-06-28 21:58:13 +09:00
jsonpath.h SQL/JSON: Correct jsonpath variable name matching 2024-06-19 15:22:06 +09:00
logtape.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
lsyscache.h ATTACH PARTITION: Don't match a PK with a UNIQUE constraint 2024-04-15 15:07:47 +02:00
memdebug.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
memutils.h Introduce a bump memory allocator 2024-04-08 00:02:43 +12:00
memutils_internal.h Introduce a bump memory allocator 2024-04-08 00:02:43 +12:00
memutils_memorychunk.h Enlarge bit-space for MemoryContextMethodID 2024-04-07 23:32:00 +12:00
meson.build Update copyright for 2024 2024-01-03 20:49:05 -05:00
multirangetypes.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
numeric.h Add functions to generate random numbers in a specified range. 2024-03-27 10:12:39 +00:00
palloc.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
partcache.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
pg_crc.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
pg_locale.h Make collation not depend on setlocale(). 2024-07-30 00:58:06 -07:00
pg_lsn.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
pg_rusage.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
pgstat_internal.h Add PgStat_KindInfo.init_shmem_cb 2024-07-11 09:21:40 +09:00
pidfile.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
plancache.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
portal.h Fix another couple of outdated comments for MERGE RETURNING. 2024-06-04 09:29:42 +01:00
ps_status.h Speedup and increase usability of set proc title functions 2023-02-20 16:18:27 +13:00
queryenvironment.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
rangetypes.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
regproc.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
rel.h Revert: Allow table AM to store complex data structures in rd_amcache 2024-04-11 16:02:49 +03:00
relcache.h Give SMgrRelation pointers a well-defined lifetime. 2024-01-31 12:31:02 +02:00
relfilenumbermap.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
relmapper.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
relptr.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
reltrigger.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
resowner.h Harmonize function parameter names for Postgres 17. 2024-06-12 17:01:51 -04:00
rls.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
ruleutils.h Implement ALTER TABLE ... SPLIT PARTITION ... command 2024-04-07 01:18:44 +03:00
sampling.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
selfuncs.h Enhance nbtree ScalarArrayOp execution. 2024-04-06 11:47:10 -04:00
sharedtuplestore.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
snapmgr.h Remove GlobalVisTestNonRemovable[Full]Horizon, not used anymore 2024-04-17 11:21:17 -07:00
snapshot.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
sortsupport.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
spccache.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
syscache.h Generate syscache info from catalog files 2024-01-23 07:31:06 +01:00
timeout.h Introduce transaction_timeout 2024-02-15 23:56:12 +02:00
timestamp.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
tuplesort.h Harmonize function parameter names for Postgres 17. 2024-06-12 17:01:51 -04:00
tuplestore.h Add memory/disk usage for Material nodes in EXPLAIN 2024-07-05 14:05:08 +12:00
typcache.h Add planner support functions for range operators <@ and @>. 2024-01-20 13:57:54 -05:00
tzparser.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
usercontext.h Perform logical replication actions as the table owner. 2023-04-04 11:25:23 -04:00
uuid.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
varbit.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
varlena.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
wait_event.h Add wait event type "InjectionPoint", a custom type like "Extension". 2024-06-27 19:21:05 -07:00
xid8.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
xml.h Update copyright for 2024 2024-01-03 20:49:05 -05:00