diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2009-10-28 17:36:50 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2009-10-28 17:36:50 +0000 |
commit | cbcd1701f12d133a04b8a104bff20738b2c29e4b (patch) | |
tree | 8ed930395e38fac17d11b07599ad29730ce37413 /src/backend/utils/adt/ruleutils.c | |
parent | 46e3a16b050a23b924e5d8a75c8bb7068c26aa96 (diff) | |
download | postgresql-cbcd1701f12d133a04b8a104bff20738b2c29e4b.tar.gz postgresql-cbcd1701f12d133a04b8a104bff20738b2c29e4b.zip |
Fix AcquireRewriteLocks to be sure that it acquires the right lock strength
when FOR UPDATE is propagated down into a sub-select expanded from a view.
Similar bug to parser's isLockedRel issue that I fixed yesterday; likewise
seems not quite worth the effort to back-patch.
Diffstat (limited to 'src/backend/utils/adt/ruleutils.c')
-rw-r--r-- | src/backend/utils/adt/ruleutils.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/backend/utils/adt/ruleutils.c b/src/backend/utils/adt/ruleutils.c index 85e52293e76..99dfd88ba52 100644 --- a/src/backend/utils/adt/ruleutils.c +++ b/src/backend/utils/adt/ruleutils.c @@ -9,7 +9,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/utils/adt/ruleutils.c,v 1.311 2009/10/28 14:55:44 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/utils/adt/ruleutils.c,v 1.312 2009/10/28 17:36:50 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -2175,7 +2175,7 @@ make_ruledef(StringInfo buf, HeapTuple ruletup, TupleDesc rulettc, query = getInsertSelectQuery(query, NULL); /* Must acquire locks right away; see notes in get_query_def() */ - AcquireRewriteLocks(query); + AcquireRewriteLocks(query, false); context.buf = buf; context.namespaces = list_make1(&dpns); @@ -2320,7 +2320,7 @@ get_query_def(Query *query, StringInfo buf, List *parentnamespace, * consistent results. Note we assume it's OK to scribble on the passed * querytree! */ - AcquireRewriteLocks(query); + AcquireRewriteLocks(query, false); context.buf = buf; context.namespaces = lcons(&dpns, list_copy(parentnamespace)); |