Thread: Re: [pgsql-patches] pg_get_domaindef

Re: [pgsql-patches] pg_get_domaindef

From
Bruce Momjian
Date:
I always felt is was better for us to have server functions that return
schema-specific data rather than require every application to define its
own functions.  I realize they are duplicated in pg_dump, but even if we
made an external library that pg_dump could share with applications,
would it only be available to C applications?  That seems quite
limiting.

Of course, if people don't need these functions, then we shouldn't have
them.

Seems we have to decide on this one so we can update the TODO or apply
the patch.

---------------------------------------------------------------------------

Tom Lane wrote:
> Andrew Dunstan <andrew@dunslane.net> writes:
> > FAST PostgreSQL wrote:
> >> Please find attached the patch with modifications
> 
> > are you proposing to implement the other functions in this TODO item 
> > (pg_get_acldef(), pg_get_typedefault(), pg_get_attrdef(), 
> > pg_get_tabledef(), pg_get_functiondef() ) ?
> 
> I haven't entirely understood the use case for any of these.  It's not
> pg_dump, for a number of reasons: one being that pg_dump still has to
> support older backend versions, and another being that every time we
> let backend SnapshotNow functions get involved, we take another hit to
> pg_dump's claim to produce a consistent MVCC snapshot.
> 
> But my real objection is: do we really want to support duplicative code
> in both pg_dump and the backend?  Updating pg_dump is already a major
> PITA whenever one adds a new feature; doubling that work isn't
> attractive.  (And it'd be double, not just a copy-and-paste, because of
> the large difference in the operating environment.)  So I want to hear a
> seriously convincing use-case that will justify the maintenance load we
> are setting up for ourselves.  "Somebody might want this" is not
> adequate.
> 
> Perhaps a better area of work would be the often-proposed refactoring of
> pg_dump into a library and driver program, wherein the library could
> expose individual functions such as "fetch the SQL definition of this
> object".  Unfortunately, that'll be a huge project with no payoff until
> the end...
> 
>             regards, tom lane
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 2: Don't 'kill -9' the postmaster

--  Bruce Momjian  <bruce@momjian.us>          http://momjian.us EnterpriseDB
http://www.enterprisedb.com
 + If your life is a hard drive, Christ can be your backup. +


Re: [pgsql-patches] pg_get_domaindef

From
Andrew Dunstan
Date:
Bruce Momjian wrote:
> I always felt is was better for us to have server functions that return
> schema-specific data rather than require every application to define its
> own functions.  I realize they are duplicated in pg_dump, but even if we
> made an external library that pg_dump could share with applications,
> would it only be available to C applications?  That seems quite
> limiting.
>   

I don't think so.

I imagine that the maintainers of DBD::Pg and phppgadmin, for example, 
would be very likely to expose them.

And I can certainly imagine using/exposing them in some psql slash commands.

cheers

andrew