Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1iWiD8-0007Ww-8k for pgsql-docs@arkaria.postgresql.org; Mon, 18 Nov 2019 14:41:02 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1iWiD6-0008JE-C0 for pgsql-docs@arkaria.postgresql.org; Mon, 18 Nov 2019 14:41:00 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1iWiD5-0008J6-TP for pgsql-docs@lists.postgresql.org; Mon, 18 Nov 2019 14:41:00 +0000 Received: from mail-wm1-x32e.google.com ([2a00:1450:4864:20::32e]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1iWiD1-0002IC-JE for pgsql-docs@lists.postgresql.org; Mon, 18 Nov 2019 14:40:58 +0000 Received: by mail-wm1-x32e.google.com with SMTP id t26so19165173wmi.4 for ; Mon, 18 Nov 2019 06:40:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cybertec-at.20150623.gappssmtp.com; s=20150623; h=message-id:subject:from:to:cc:date:in-reply-to:references :user-agent:mime-version; bh=c7K6TUyio+OGBNtbml5J+6S3hN/3Or11yb5GrLbW234=; b=d5JLurV8gdWiYV/oBrL61n/PzUkay88wjrEVDKglFna0sTk02fWXmuAZCGRgMmL7Kf QUQyAk368UniggiddEhqmAEGQ6eaf06dLLE7ysCLKZh4xC4Y7mSVi8jgzBNR5q1M286K 93X3n1cDKupt5FgIscLPD2/TgPXD/RL16ZPKjX6l6VHeV6fJBqeJt1XfCY998iD+jR6V 70KzW9CmFKiwZgIJZvlv12hudr6wlljNihWBfhhkmp7BjHamMr58B0SVVfuhXSVACoeD 761PMIW8xetTWPjbEEg9pVpaOsOo3y/TCPOZwbM1zDr6qFRGEQtX+aoNbZijuVMUOTQ7 Ezng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:message-id:subject:from:to:cc:date:in-reply-to :references:user-agent:mime-version; bh=c7K6TUyio+OGBNtbml5J+6S3hN/3Or11yb5GrLbW234=; b=DmdYMpswcuLt1b+GmQFThlGzroQAq10qxlLN/0o3DL9trQEdshSY04jIkHbUon+XE3 xSLvgrSWTy9UhTnmW7d6xViHFejmTYGLjvSrIOTerJYudsn9Y68xRAxgHfgNQG2GgZtT RvgmWN+vmKHtg7jzmB1W+KzQvMcNDStfuGBEYA90dgxmHUK4PwSXxwRpLtjQvIkTMy8W /aZ3jXdED6bAD+RJGgRv67YtkAwCIrW55Qhj2+7yF1ScMMq2ksIll/wszngqHzVGuo5m mXjSeHMakaKDGS+UsVXWjzQmtbKLi5A85QfOp/X/vBlVJ+HjnXGARVvwrmAAeQc6tMrQ suyA== X-Gm-Message-State: APjAAAV8u1nPfX3NBbhtVXW1PDunbY0TkcO9ltrrDpvYTvCI/e7OAUPe kMWCeN5maQBzmzYIs0WAb7SGPw== X-Google-Smtp-Source: APXvYqxYehci3dD3I7hn2+wX0mnLbrc+n2nxInufcM9kHj/K73o9o4lH3bVpMn//eT9YHpM5VKdITQ== X-Received: by 2002:a1c:410a:: with SMTP id o10mr29702886wma.117.1574088053573; Mon, 18 Nov 2019 06:40:53 -0800 (PST) Received: from localhost.localdomain ([212.186.219.234]) by smtp.gmail.com with ESMTPSA id z8sm22755228wrp.49.2019.11.18.06.40.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 18 Nov 2019 06:40:52 -0800 (PST) Message-ID: <6c993738c0054bedb9622da0d6789a8d12955cb2.camel@cybertec.at> Subject: Re: Role membership and DROP From: Laurenz Albe To: Tom Lane Cc: pgsql-hackers@postgresql.org, pgsql-docs@lists.postgresql.org Date: Mon, 18 Nov 2019 15:40:51 +0100 In-Reply-To: <10546.1573843266@sss.pgh.pa.us> References: <504497aca66bf34bdcdd90bd0bcebdc3a33f577b.camel@cybertec.at> <6808.1573683426@sss.pgh.pa.us> <10546.1573843266@sss.pgh.pa.us> Content-Type: multipart/mixed; boundary="=-1dpqbDLyMxPVRXu7KT+0" User-Agent: Evolution 3.32.4 (3.32.4-1.fc30) MIME-Version: 1.0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --=-1dpqbDLyMxPVRXu7KT+0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit On Fri, 2019-11-15 at 13:41 -0500, Tom Lane wrote: > Laurenz Albe writes: > > On Wed, 2019-11-13 at 17:17 -0500, Tom Lane wrote: > > > It might be worth clarifying this point in section 5.7, > > > https://www.postgresql.org/docs/devel/ddl-priv.html > > > but let's not duplicate that in every ref/ page. > > I have attached a proposed patch. > > > The right to modify or destroy an object is always the privilege of > - the owner only. > + the owner. Like all privileges, that right can be inherited by members of > + the owning role. > > > Hm. This is more or less contradicting the original meaning of the > existing sentence, so maybe we need to rewrite a bit more. What do > you think of > > The right to modify or destroy an object is inherent in being the > object's owner. Like all privileges, that right can be inherited by > members of the owning role; but there is no way to grant or revoke > it more selectively. > > A larger problem (pre-existing, since there's a reference to being a > member of the owning role just a bit further down) is that I don't think > we've defined role membership at this point, so the reader is quite > entitled to come away more confused than they were before. It might not > be advisable to try to cover role membership here, but we should at > least add a cross-reference to where it's explained. I think you are right about the potential confusion; I have added a cross-reference. That cross-reference is hopefully still in short-term memory when the reader proceeds to the second reference to role membership a few sentences later. I like your second sentence, but I think that "the right ... is inherent in being the ... owner" is unnecessarily complicated. Removing the "always" and "only" makes the apparent contradiction between the sentences less jarring to me. I won't fight about words though. Attached is my second attempt. Yours, Laurenz Albe --=-1dpqbDLyMxPVRXu7KT+0 Content-Disposition: attachment; filename*0=0001-Document-that-the-right-to-ALTER-or-DROP-is-hereditary.V; filename*1=2.patch Content-Transfer-Encoding: base64 Content-Type: text/x-patch; name*0=0001-Document-that-the-right-to-ALTER-or-DROP-is-hereditary.V2.pa; name*1=tch; charset="UTF-8" RnJvbSAyZTNhYmFhYTNiMGE1ZGViMDA2ZDIyMTBjM2U2NmY1YjM1NzFiZmQyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBMYXVyZW56IEFsYmUgPGxhdXJlbnouYWxiZUBjeWJlcnRlYy5h dD4KRGF0ZTogTW9uLCAxOCBOb3YgMjAxOSAxNToyMzoxMCArMDEwMApTdWJqZWN0OiBbUEFUQ0hd IERvY3VtZW50IHRoYXQgdGhlIHJpZ2h0IHRvIEFMVEVSIG9yIERST1AgaXMgaGVyZWRpdGFyeQoK RGlzY3Vzc2lvbjogaHR0cHM6Ly9wb3N0Z3IuZXMvbS81MDQ0OTdhY2E2NmJmMzRiZGNkZDkwYmQw YmNlYmRjM2EzM2Y1NzdiLmNhbWVsQGN5YmVydGVjLmF0Ci0tLQogZG9jL3NyYy9zZ21sL2RkbC5z Z21sIHwgNiArKysrLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDIgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL2RkbC5zZ21sIGIvZG9jL3NyYy9zZ21s L2RkbC5zZ21sCmluZGV4IDlkNmVjMmM3MzguLjAzMGM4OTZmODIgMTAwNjQ0Ci0tLSBhL2RvYy9z cmMvc2dtbC9kZGwuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvZGRsLnNnbWwKQEAgLTE1NzgsOCAr MTU3OCwxMCBAQCBBTFRFUiBUQUJMRSBwcm9kdWN0cyBSRU5BTUUgVE8gaXRlbXM7CiAgIDwvcGFy YT4KIAogICA8cGFyYT4KLSAgIFRoZSByaWdodCB0byBtb2RpZnkgb3IgZGVzdHJveSBhbiBvYmpl Y3QgaXMgYWx3YXlzIHRoZSBwcml2aWxlZ2Ugb2YKLSAgIHRoZSBvd25lciBvbmx5LgorICAgVGhl IHJpZ2h0IHRvIG1vZGlmeSBvciBkZXN0cm95IGFuIG9iamVjdCBpcyB0aGUgcHJpdmlsZWdlIG9m IHRoZSBvd25lci4KKyAgIExpa2UgYWxsIHByaXZpbGVnZXMsIHRoYXQgcmlnaHQgY2FuIGJlIGlu aGVyaXRlZCBieSBtZW1iZXJzIG9mIHRoZSBvd25pbmcgcm9sZSwKKyAgIGJ1dCB0aGVyZSBpcyBu byB3YXkgdG8gZ3JhbnQgb3IgcmV2b2tlIGl0IG1vcmUgc2VsZWN0aXZlbHkuCisgICBTZWUgPHhy ZWYgbGlua2VuZD0icm9sZS1tZW1iZXJzaGlwIi8+IGZvciBtb3JlIGFib3V0IHJvbGUgbWVtYmVy c2hpcC4KICAgPC9wYXJhPgogCiAgIDxwYXJhPgotLSAKMi4yMS4wCgo= --=-1dpqbDLyMxPVRXu7KT+0--