aboutsummaryrefslogtreecommitdiff
path: root/src/include/postgres.h
diff options
context:
space:
mode:
authorAlvaro Herrera <alvherre@alvh.no-ip.org>2013-01-31 19:12:35 -0300
committerAlvaro Herrera <alvherre@alvh.no-ip.org>2013-01-31 19:35:31 -0300
commitb78647a0e6f7b110273e98601f26d3d1db0ad931 (patch)
treed49dfdbe12521345beb14ed3e95e964ec7dbae9c /src/include/postgres.h
parent77a3082fc546774808b76f58173caec3852ebf62 (diff)
downloadpostgresql-b78647a0e6f7b110273e98601f26d3d1db0ad931.tar.gz
postgresql-b78647a0e6f7b110273e98601f26d3d1db0ad931.zip
Restrict infomask bits to set on multixacts
We must only set the bit(s) for the strongest lock held in the tuple; otherwise, a multixact containing members with exclusive lock and key-share lock will behave as though only a share lock is held. This bug was introduced in commit 0ac5ad5134, somewhere along development, when we allowed a singleton FOR SHARE lock to be implemented without a MultiXact by using a multi-bit pattern. I overlooked that GetMultiXactIdHintBits() needed to be tweaked as well. Previously, we could have the bits for FOR KEY SHARE and FOR UPDATE simultaneously set and it wouldn't cause a problem. Per report from digoal@126.com
Diffstat (limited to 'src/include/postgres.h')
0 files changed, 0 insertions, 0 deletions