Improve behavior of concurrent CLUSTER. In the previous coding, a user could queue up for an AccessExclusiveLock on a table they did not have permission to cluster, thus potentially interfering with access by authorized users who got stuck waiting behind the AccessExclusiveLock. This approach avoids that. cluster() has the same permissions-checking requirements as REINDEX TABLE, so this commit moves the now-shared callback to tablecmds.c and renames it, per discussion with Noah Misch.
Branch ------ master Details ------- http://git.postgresql.org/pg/commitdiff/cbe24a6dd8fb224b9585f25b882d5ffdb55a0ba5 Modified Files -------------- src/backend/commands/cluster.c | 16 +++++++--------- src/backend/commands/indexcmds.c | 36 ++---------------------------------- src/backend/commands/tablecmds.c | 35 +++++++++++++++++++++++++++++++++++ src/include/commands/tablecmds.h | 3 +++ 4 files changed, 47 insertions(+), 43 deletions(-) -- Sent via pgsql-committers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-committers
