aboutsummaryrefslogtreecommitdiff
path: root/src/backend/executor/nodeHash.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2023-03-20 18:37:11 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2023-03-20 18:37:11 -0400
commit72a5b1fc880481914da2d4233077438dd87840ca (patch)
treea4ff9a54fb004dca734053512f98e260d1ec2664 /src/backend/executor/nodeHash.c
parent30e9f2608adf2f61fc2e1be13ef8bc88c250f303 (diff)
downloadpostgresql-72a5b1fc880481914da2d4233077438dd87840ca.tar.gz
postgresql-72a5b1fc880481914da2d4233077438dd87840ca.zip
Add @extschema:name@ and no_relocate options to extensions.
@extschema:name@ extends the existing @extschema@ feature so that we can also insert the schema name of some required extension, thus making cross-extension references robust even if they are in different schemas. However, this has the same hazard as @extschema@: if the schema name is embedded literally in an installed object, rather than being looked up once during extension script execution, then it's no longer safe to relocate the other extension to another schema. To deal with that without restricting things unnecessarily, add a "no_relocate" option to extension control files. This allows an extension to specify that it cannot handle relocation of some of its required extensions, even if in themselves those extensions are relocatable. We detect "no_relocate" requests of dependent extensions during ALTER EXTENSION SET SCHEMA. Regina Obe, reviewed by Sandro Santilli and myself Discussion: https://postgr.es/m/003001d8f4ae$402282c0$c0678840$@pcorp.us
Diffstat (limited to 'src/backend/executor/nodeHash.c')
0 files changed, 0 insertions, 0 deletions