pg.ddx.io  pgsql-bugs@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Alvaro Herrera <alvherre@2ndquadrant.com>
To: Daniel Gustafsson <daniel@yesql.se>
Cc: Michael Paquier <michael@paquier.xyz>
Cc: clemens@ladisch.de, PostgreSQL mailing lists <pgsql-bugs@lists.postgresql.org>
Subject: Re: BUG #15833: defining a comment on a domain constraint fails with wrong OID
Date: Mon, 10 Jun 2019 08:55:27 -0400
Message-ID: <20190610125527.GA30133@alvherre.pgsql> (raw)
In-Reply-To: <03D5C161-2624-4131-9BFF-16BF1D0CA1F2@yesql.se>

On 2019-Jun-10, Daniel Gustafsson wrote:

> +1 on the approach of the patch, it seems like the simplest approach.  A
> comment on the check_object_ownership() diff though:
> 
> +	if (!pg_domain_constraint_ownercheck(address.objectId, roleid))
> +		aclcheck_error_type(ACLCHECK_NOT_OWNER, address.objectId);
> 
> This doesn’t work for the errorcase as the address.objectId is the wrong Oid
> here as well, the contypid extracted in pg_domain_constraint_ownercheck() is
> required.  I’ve hacked up your patch to pass it back and that seems to work,

-1 on this approach.  Having this ownercheck function return the owning
object ID seems way too strange.  I'd rather not have the new ownercheck
function, and instead do a syscache search to obtain the type OID in
check_object_ownership, then do pg_type_ownercheck.  I'm not even sure
that pg_domain_constraint_ownercheck makes a lot of sense in itself,
since it's never the constraint that requires an owner check.

-- 
Álvaro Herrera                https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services





view thread (11+ messages)  latest in thread

Message-ID: <20190610125527.GA30133@alvherre.pgsql>
Permalink:  ../20190610125527.GA30133@alvherre.pgsql/
Also on:    postgresql.org/message-id/20190610125527.GA30133@alvherre.pgsql

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-bugs@postgresql.org
  Cc: alvherre@2ndquadrant.com, daniel@yesql.se, michael@paquier.xyz, pgsql-bugs@lists.postgresql.org
  Subject: Re: BUG #15833: defining a comment on a domain constraint fails with wrong OID
  In-Reply-To: <20190610125527.GA30133@alvherre.pgsql>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox