Thread: system info functions
(1) The docs claim that pg_get_viewdef() returns the "CREATE VIEW command for view", but that is clearly not the case: postgres=# create view v1 as select 1; CREATE VIEW postgres=# select pg_get_viewdef('v1'::regclass::oid);pg_get_viewdef ----------------SELECT 1; (1 row) Should we change the documentation, or the implementation of pg_get_viewdef()? (2) pg_get_indexdef() and pg_get_triggerdef() don't include a terminating semi-colon, but pg_get_ruledef() does (as does the SELECT statement returned by pg_get_viewdef()). Is there a good reason for this inconsistency? -Neil
> -----Original Message----- > From: pgsql-hackers-owner@postgresql.org > [mailto:pgsql-hackers-owner@postgresql.org] On Behalf Of Neil Conway > Sent: 04 July 2006 05:53 > To: pgsql-hackers@postgresql.org > Subject: [HACKERS] system info functions > > (1) The docs claim that pg_get_viewdef() returns the "CREATE VIEW > command for view", but that is clearly not the case: > > postgres=# create view v1 as select 1; > CREATE VIEW > postgres=# select pg_get_viewdef('v1'::regclass::oid); > pg_get_viewdef > ---------------- > SELECT 1; > (1 row) > > Should we change the documentation, or the implementation of > pg_get_viewdef()? Documentation, unless we want to break apps that use the function. Regards, Dave.
"Dave Page" <dpage@vale-housing.co.uk> writes: >> [mailto:pgsql-hackers-owner@postgresql.org] On Behalf Of Neil Conway >> Should we change the documentation, or the implementation of >> pg_get_viewdef()? > Documentation, unless we want to break apps that use the function. ... such as pg_dump. regards, tom lane
On Jul 4, 2006, at 3:35 AM, Dave Page wrote: >> -----Original Message----- >> From: pgsql-hackers-owner@postgresql.org >> [mailto:pgsql-hackers-owner@postgresql.org] On Behalf Of Neil Conway >> Sent: 04 July 2006 05:53 >> To: pgsql-hackers@postgresql.org >> Subject: [HACKERS] system info functions >> >> (1) The docs claim that pg_get_viewdef() returns the "CREATE VIEW >> command for view", but that is clearly not the case: >> >> postgres=# create view v1 as select 1; >> CREATE VIEW >> postgres=# select pg_get_viewdef('v1'::regclass::oid); >> pg_get_viewdef >> ---------------- >> SELECT 1; >> (1 row) >> >> Should we change the documentation, or the implementation of >> pg_get_viewdef()? > > Documentation, unless we want to break apps that use the function. Though, it would be nice to get everything into a consistent state. Since some get_*def commands have to return the create statements, we should probably move everything in that direction (or have two sets of functions, but that seems rather overblown...). -- Jim C. Nasby, Sr. Engineering Consultant jnasby@pervasive.com Pervasive Software http://pervasive.com work: 512-231-6117 vcard: http://jim.nasby.net/pervasive.vcf cell: 512-569-9461