aboutsummaryrefslogtreecommitdiff
path: root/src/backend/parser/parse_utilcmd.c
diff options
context:
space:
mode:
authorKevin Grittner <kgrittn@postgresql.org>2013-08-05 09:57:56 -0500
committerKevin Grittner <kgrittn@postgresql.org>2013-08-05 09:57:56 -0500
commit841c29c8b3be98ee30486ee245ebee782d4dedd4 (patch)
treed25855f3d0a84a4d7cd6eaefae3090a29bf5db19 /src/backend/parser/parse_utilcmd.c
parent221e92f64c6e136e550ec2592aac3ae0d4623209 (diff)
downloadpostgresql-841c29c8b3be98ee30486ee245ebee782d4dedd4.tar.gz
postgresql-841c29c8b3be98ee30486ee245ebee782d4dedd4.zip
Various cleanups for REFRESH MATERIALIZED VIEW CONCURRENTLY.
Open and lock each index before checking definition in RMVC. The ExclusiveLock on the related table is not viewed as sufficient to ensure that no changes are made to the index definition, and invalidation messages from other backends might have been missed. Additionally, use RelationGetIndexExpressions() and check for NIL rather than doing our own loop. Protect against redefinition of tid and rowvar operators in RMVC. While working on this, noticed that the fixes for bugs found during the CF made the UPDATE statement useless, since no rows could qualify for that treatment any more. Ripping out code to support the UPDATE statement simplified the operator cleanups. Change slightly confusing local field name. Use meaningful alias names on queries in refresh_by_match_merge(). Per concerns of raised by Andres Freund and comments and suggestions from Noah Misch. Some additional issues remain, which will be addressed separately.
Diffstat (limited to 'src/backend/parser/parse_utilcmd.c')
0 files changed, 0 insertions, 0 deletions