PostgreSQL Version: 9.3.5
Operating Systems Tested: Linux, SmartOS
1. Create extensions in the public schema.
2. Create additional schemas.
3. Create tables that use datatypes from the extensions that depend on
extension functions.
4. Run pg_dump or pg_dumpall.
5. Attempt to restore from the SQL dump.
In the SQL dump, you will notice that the SET search_path = xxx values
will often not include the public schema which holds the functions
needed to properly recreate tables that depend on extensions.
For now we have a work around that is very ugly. We just pipe the SQL
output to sed -e 's/^\(SET search_path =.*\);/\1, public;/' and
everything seems to work just fine.
It seems like the code that generates the SET search_path should check
to see if any of the objects it is dumping depend on functions that
use the public schema.
I would love to see a fix for this in future PostgreSQL versions, so
please let me know what I can do to help.
Thank you,
Elijah Zupancic
elijah@zupancic.name