On Thu, Jan 22, 2015 at 10:50 AM, Heikki Linnakangas <hlinnakan...@vmware.com> wrote: > On 01/12/2015 11:33 PM, Petr Jelinek wrote: >> Second patch adds DDL support. I originally wanted to make it >> CREATE/DROP SEQUENCE ACCESS METHOD... but that would mean making ACCESS >> a reserver keyword so I went for CREATE ACCESS METHOD FOR SEQUENCES >> which does not need to change anything (besides adding METHOD to >> unreserved keywords). >> The DDL support uses the DefineStmt infra with some very small change as >> the sequence ams are not schema qualified, but I think it's acceptable >> and saves considerable amount of boilerplate. > > Do we need DDL commands for this at all? I could go either way on that > question. We recently had a discussion on that wrt. index access methods > [1], and Tom opined that providing DDL for creating index access methods is > not worth it. The extension can just insert the rows into pg_seqam with > INSERT. Do we expect sequence access methods as extensions to be more > popular than index access methods? Maybe, because the WAL-logging problem > doesn't exist. But OTOH, if you're writing something like a replication > system that needs global sequences as part of it, there aren't that many of > those, and the installation scripts will need to deal with more complicated > stuff than inserting a row in pg_seqam.
I think the main reason we don't need DDL for pg_am is because there's no real hope of anybody actually inserting anything in there whether we have a command for it or not. If we actually expect this to be used, I think it should probably have some kind of DDL, because otherwise what will pg_dump emit? "Nothing" is bad because then dumps won't restore, and "direct inserts to pg_seqam" doesn't seem great either. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers