DROP OWNED BY

Started by Alvaro Herreraover 20 years ago4 messages
#1Alvaro Herrera
alvherre@alvh.no-ip.org

I'm working on the promised DROP OWNED patch, and just noticed that it
needs modifications to the Grant/Revoke machinery that are too invasive
to consider for 8.1; the problem is that ExecuteGrantStmt takes textual
names for objects and grantees, and what I have from pg_shdepend are
Oids. Dropping the objects themselves is easy -- the problem is
dropping grants to other objects.

So, instead of doing that, I think it's better to convert the Oids to
names in the shared-dependency code. This should be rewritten after the
next development period starts, for efficiency and cleanliness.

Is anyone opposed to this idea? Further, is anyone opposed to the
addition as a whole? I'm already a month and a half late with this
part of the shdep patch, so if people think it's better to ship this
release without it, so be it. (Of course I don't like that.)

--
Alvaro Herrera (<alvherre[a]alvh.no-ip.org>)
"Cuando no hay humildad las personas se degradan" (A. Christie)

#2Marc G. Fournier
scrappy@postgresql.org
In reply to: Alvaro Herrera (#1)
Re: DROP OWNED BY

Definitely should be released without it ... it is an extension not
submitted for inclusion prior to the feature freeze ...

On Fri, 12 Aug 2005, Alvaro Herrera wrote:

I'm working on the promised DROP OWNED patch, and just noticed that it
needs modifications to the Grant/Revoke machinery that are too invasive
to consider for 8.1; the problem is that ExecuteGrantStmt takes textual
names for objects and grantees, and what I have from pg_shdepend are
Oids. Dropping the objects themselves is easy -- the problem is
dropping grants to other objects.

So, instead of doing that, I think it's better to convert the Oids to
names in the shared-dependency code. This should be rewritten after the
next development period starts, for efficiency and cleanliness.

Is anyone opposed to this idea? Further, is anyone opposed to the
addition as a whole? I'm already a month and a half late with this
part of the shdep patch, so if people think it's better to ship this
release without it, so be it. (Of course I don't like that.)

--
Alvaro Herrera (<alvherre[a]alvh.no-ip.org>)
"Cuando no hay humildad las personas se degradan" (A. Christie)

---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings

----
Marc G. Fournier Hub.Org Networking Services (http://www.hub.org)
Email: scrappy@hub.org Yahoo!: yscrappy ICQ: 7615664

#3Tom Lane
tgl@sss.pgh.pa.us
In reply to: Alvaro Herrera (#1)
Re: DROP OWNED BY

Alvaro Herrera <alvherre@alvh.no-ip.org> writes:

I'm working on the promised DROP OWNED patch, and just noticed that it
needs modifications to the Grant/Revoke machinery that are too invasive
to consider for 8.1; the problem is that ExecuteGrantStmt takes textual
names for objects and grantees, and what I have from pg_shdepend are
Oids.

So refactor the GrantStmt code into a layer that translates to OIDs and
another layer that does the work. The other way doesn't sound good to
me; it is prone to race conditions against someone doing a RENAME.

Is anyone opposed to this idea? Further, is anyone opposed to the
addition as a whole? I'm already a month and a half late with this
part of the shdep patch, so if people think it's better to ship this
release without it, so be it. (Of course I don't like that.)

I think we're rapidly approaching the point where we have to say "sorry,
that is too late for this release". DROP OWNED is really a new feature,
not an essential component of the ROLES patch, and we've already
stretched the no-new-features-after-freeze rule to the breaking point.
I'll take the full blame for that --- I should probably not have forced
in the ROLES patch so close to feature freeze when it was obviously not
finished --- but at some point we've got to say no.

regards, tom lane

#4Alvaro Herrera
alvherre@alvh.no-ip.org
In reply to: Tom Lane (#3)
Re: DROP OWNED BY

On Sat, Aug 13, 2005 at 10:09:35AM -0400, Tom Lane wrote:

Alvaro Herrera <alvherre@alvh.no-ip.org> writes:

I'm working on the promised DROP OWNED patch, and just noticed that it
needs modifications to the Grant/Revoke machinery that are too invasive
to consider for 8.1; the problem is that ExecuteGrantStmt takes textual
names for objects and grantees, and what I have from pg_shdepend are
Oids.

So refactor the GrantStmt code into a layer that translates to OIDs and
another layer that does the work. The other way doesn't sound good to
me; it is prone to race conditions against someone doing a RENAME.

Roger. I'll produce a patch for 8.2.

--
Alvaro Herrera (<alvherre[a]alvh.no-ip.org>)
"Es fil�sofo el que disfruta con los enigmas" (G. Coli)