Hello,
I've discovered something today that I didn't really expect. When a user dumps a database with the --schema flag of pg_dump, extensions in this schema aren't dumped. As far as I can tell, the documentation isn't clear about this ("Dump only schemas matching pattern; this selects both the schema itself, and all its contained objects."), though the source code definitely is ("We dump all user-added extensions by default, or none of them if include_everything is false (i.e., a --schema or --table switch was given).", in pg_dump.c).
I was wondering the reason behind this choice. If anyone knows, I'd be happy to hear about it.
I see two things:
* it's been overlooked, and we should dump all the extensions available in a schema if this schema has been selected through the --schema flag.
* it's kind of like the large objects handling, and I'd pretty interested in adding a --extensions (as the same way there is a --blobs flag).
Thanks.
Regards.