postgresql/src/include/utils
Alvaro Herrera 374c7a2290
Allow specifying an access method for partitioned tables
It's now possible to specify a table access method via
CREATE TABLE ... USING for a partitioned table, as well change it with
ALTER TABLE ... SET ACCESS METHOD.  Specifying an AM for a partitioned
table lets the value be used for all future partitions created under it,
closely mirroring the behavior of the TABLESPACE option for partitioned
tables.  Existing partitions are not modified.

For a partitioned table with no AM specified, any new partitions are
created with the default_table_access_method.

Also add ALTER TABLE ... SET ACCESS METHOD DEFAULT, which reverts to the
original state of using the default for new partitions.

The relcache of partitioned tables is not changed: rd_tableam is not
set, even if a partitioned table has a relam set.

Author: Justin Pryzby <pryzby@telsasoft.com>
Author: Soumyadeep Chakraborty <soumyadeep2007@gmail.com>
Author: Michaël Paquier <michael@paquier.xyz>
Reviewed-by: The authors themselves
Discussion: https://postgr.es/m/CAE-ML+9zM4wJCGCBGv01k96qQ3gFv4WFcFy=zqPHKeaEFwwv6A@mail.gmail.com
Discussion: https://postgr.es/m/20210308010707.GA29832%40telsasoft.com
2024-03-25 16:30:36 +01:00
..
.gitignore Generate automatically code and documentation related to wait events 2023-07-05 10:53:11 +09:00
acl.h Reintroduce MAINTAIN privilege and pg_maintain predefined role. 2024-03-13 14:49:26 -05: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 Add template for adaptive radix tree 2024-03-07 12:40:11 +07: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 Fix buildfarm failures from 2af07e2f74. 2024-03-04 19:42:16 -08:00
guc_hooks.h Introduce a new GUC 'standby_slot_names'. 2024-03-08 08:10:45 +05:30
guc_tables.h Update copyright for 2024 2024-01-03 20:49:05 -05: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 backend support for injection points 2024-01-22 10:15:50 +09:00
inval.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
json.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
jsonb.h Add SQL/JSON query functions 2024-03-21 17:07:03 +09:00
jsonfuncs.h Add SQL/JSON query functions 2024-03-21 17:07:03 +09:00
jsonpath.h Add SQL/JSON query functions 2024-03-21 17:07:03 +09:00
logtape.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
lsyscache.h Allow specifying an access method for partitioned tables 2024-03-25 16:30:36 +01:00
memdebug.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
memutils.h Avoid recursion in MemoryContext functions 2024-03-08 13:18:30 +02:00
memutils_internal.h Adjust memory allocation functions to allow sibling calls 2024-02-27 16:39:42 +13:00
memutils_memorychunk.h Update copyright for 2024 2024-01-03 20:49:05 -05: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 Update copyright for 2024 2024-01-03 20:49:05 -05: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 Address more review comments on commit 2d819a08a1. 2024-03-18 11:58:13 -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 Rename SLRU elements in view pg_stat_slru 2024-02-28 09:39:52 +01: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 Update copyright for 2024 2024-01-03 20:49:05 -05: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 Allow table AM to store complex data structures in rd_amcache 2024-03-21 23:00:34 +02: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 Update copyright for 2024 2024-01-03 20:49:05 -05:00
resowner_private.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
rls.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
ruleutils.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
sampling.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
selfuncs.h Teach estimate_array_length() to use statistics where available. 2024-01-04 18:36:19 -05:00
sharedtuplestore.h Update copyright for 2024 2024-01-03 20:49:05 -05:00
snapmgr.h Update copyright for 2024 2024-01-03 20:49:05 -05: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 Update copyright for 2024 2024-01-03 20:49:05 -05:00
tuplestore.h Update copyright for 2024 2024-01-03 20:49:05 -05: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 Update copyright for 2024 2024-01-03 20:49:05 -05: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