On Monday, February 27, 2012 1:23:22 pm James B. Byrne wrote: > Obviously, I am missing something important here. The > database in question is created thusly: > > CREATE DATABASE test > WITH OWNER = devl > ENCODING = 'UTF8' > TABLESPACE = pg_default > LC_COLLATE = 'en_US.UTF-8' > LC_CTYPE = 'en_US.UTF-8' > CONNECTION LIMIT = -1; When you run the above are you doing it as user dev1 or the postgres user? > > > The manual says this: > > Loading an extension requires the same privileges that > would be required to create its component objects. For > most extensions this means superuser or database owner > privileges are needed. The user who runs CREATE EXTENSION > becomes the owner of the extension for purposes of later > privilege checks, as well as the owner of any objects > created by the extension's script. > > However, looking at the extension properties shows this: > > -- Extension: plpgsql > > -- DROP EXTENSION plpgsql; > > CREATE EXTENSION plpgsql > SCHEMA pg_catalog > VERSION "1.0"; > ALTER EXTENSION plpgsql > OWNER TO postgres; > > So, why is the plpgsql extension in test owned by postgres > and not by devl to begin with? Is plpgsql in template1 and you are running the CREATE DATABASE script as postgres? -- Adrian Klaver adrian.klaver@xxxxxxxxx -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general