Fix a problem with parallel workers being unable to restore role.
Robert Haas <rhaas@postgresql.org>
Fix a problem with parallel workers being unable to restore role. check_role() tries to verify that the user has permission to become the requested role, but this is inappropriate in a parallel worker, which needs to exactly recreate the master's authorization settings. So skip the check in that case. This fixes a bug in commit 924bcf4f16d54c55310b28f77686608684734f42.
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/access/transam/parallel.c | modified | +7 −0 |
| src/backend/commands/variable.c | modified | +6 −2 |
| src/include/access/parallel.h | modified | +1 −0 |