On Dec 20, 2006, at 7:56 AM, Florian G. Pflug wrote:
Jim Nasby wrote:
I'm teaching a class this week and a student asked me about OIDs. He related the story of how in Sybase, if you moved a database from one server from another, permissions got all screwed up because user IDs no longer matched. I explained that exposing something like an integer ID in a user interface or an API is just a bad idea and PostgreSQL doesn't do that.
Then I got to pg_autovacuum....
So... is there any reason there isn't a prescribed interface to pg_autovacuum that doesn't expose vacrelid? Can we get that added to TODO?

Wouldn't it be sufficient to change the type of vacrelid from oid
to regclass? Then just dumping and restoring pg_autovacuum like any
other table should Just Work.

I think that would work, though as I mentioned we'd also want to set reasonable defaults on the table if we decide to keep that as our interface.

On the other hand, this would be the only part of the system where the official interface/API is a system catalog table. Do we really want to expose the internal representation of something as our API? That doesn't seem wise to me...

Additionally, AFAIK it is not safe to go poking data into catalogs willy-nilly. Having one table where this is the interface to the system seems like it could lead to some dangerous confusion.
--
Jim Nasby                               [EMAIL PROTECTED]
EnterpriseDB      http://enterprisedb.com      512.569.9461 (cell)




---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

Reply via email to