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
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
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