Create syscache entries for pg_extension

Two syscache identifiers are added for extension names and OIDs.

Shared libraries of extensions might want to invalidate or update their
own caches whenever a CREATE, ALTER or DROP EXTENSION command is run for
their extension (in any backend).  Right now this is non-trivial to do
correctly and efficiently, but, if an extension catalog is part of a
syscache, this could simply be done by registering an callback using
CacheRegisterSyscacheCallback for the relevant syscache.

Another case where this is useful is a loaded library where some of its
code paths rely on some objects of the extension to exist; it can be
simpler and more efficient to do an existence check directly on the
extension through the syscache.

Author: Jelte Fennema-Nio
Reviewed-by: Alexander Korotkov, Pavel Stehule
Discussion: 
https://postgr.es/m/cageczqtwm9sex719hptbq4j56hbguti7j9owjemobq1ccro...@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/490f869d92e5db38731b85b9be3cffdc65461808

Modified Files
--------------
src/include/catalog/pg_extension.h | 3 +++
1 file changed, 3 insertions(+)

Reply via email to