Re: Non-superuser subscription owners
Jeff Davis <pgsql@j-davis.com>
From: Jeff Davis <pgsql@j-davis.com>
To: Amit Kapila <amit.kapila16@gmail.com>
Cc: Mark Dilger <mark.dilger@enterprisedb.com>, Andrew Dunstan
<andrew@dunslane.net>, PostgreSQL-development
<pgsql-hackers@postgresql.org>, Robert Haas <robertmhaas@gmail.com>
Date: 2021-11-29T19:26:01Z
Lists: pgsql-hackers
On Mon, 2021-11-29 at 09:43 +0530, Amit Kapila wrote: > The first reason is that way it would be consistent with what we can > see while doing the operations from the backend. Logical replication is not interactive, so it doesn't seem quite the same. If you have a long running INSERT INTO SELECT or COPY FROM, the permission checks just happen at the beginning. As a user, it wouldn't surprise me if logical replication was similar. > operation. Another reason is to make behavior predictable as users > can > always expect when exactly the privilege change will be reflected and > it won't depend on the number of changes in the transaction. This patch does detect ownership changes more quickly (at the transaction boundary) than the current code (only when it reloads for some other reason). Transaction boundary seems like a reasonable time to detect the change to me. Detecting faster might be nice, but I don't have a strong opinion about it and I don't see why it necessarily needs to happen before this patch goes in. Also, do you think the cost of doing maybe_reread_subscription() per- tuple instead of per-transaction would be detectable? If we lock ourselves into semantics that detect changes quickly, it will be harder to optimize the per-tuple path later. Regards, Jeff Davis
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Fix possible crash in tablesync worker.
- b5c517379a40 16.0 landed
-
Display 'password_required' option for \dRs+ command.
- 19e65dff38bd 16.0 landed
-
Restart the apply worker if the 'password_required' option is changed.
- c1cc4e688b60 16.0 landed
-
Fix possible logical replication crash.
- e7e7da2f8d57 16.0 landed
-
Add new predefined role pg_create_subscription.
- c3afe8cf5a1e 16.0 landed
-
Expand AclMode to 64 bits
- 7b378237aa80 16.0 cited
-
More cleanup of a2ab9c06ea.
- 96a6f11c0625 15.0 landed
-
Respect permissions within logical replication.
- a2ab9c06ea15 15.0 landed
-
Improve table locking behavior in the face of current DDL.
- 2ad36c4e44c8 9.2.0 cited