postgresql/contrib/amcheck
Alvaro Herrera 8deb6b38dc
Reinstate HEAP_XMAX_LOCK_ONLY|HEAP_KEYS_UPDATED as allowed
Commit 866e24d47d added an assert that HEAP_XMAX_LOCK_ONLY and
HEAP_KEYS_UPDATED cannot appear together, on the faulty assumption that
the latter necessarily referred to an update and not a tuple lock; but
that's wrong, because SELECT FOR UPDATE can use precisely that
combination, as evidenced by the amcheck test case added here.

Remove the Assert(), and also patch amcheck's verify_heapam.c to not
complain if the combination is found.  Also, out of overabundance of
caution, update (across all branches) README.tuplock to be more explicit
about this.

Author: Julien Rouhaud <rjuju123@gmail.com>
Reviewed-by: Mahendra Singh Thalor <mahi6run@gmail.com>
Reviewed-by: Dilip Kumar <dilipbalaut@gmail.com>
Discussion: https://postgr.es/m/20210124061758.GA11756@nol
2021-02-23 17:30:21 -03:00
..
expected Display the time when the process started waiting for the lock, in pg_locks, take 2 2021-02-15 15:13:37 +09:00
sql Disable vacuum page skipping in selected test cases. 2021-01-20 11:49:29 -05:00
t Reinstate HEAP_XMAX_LOCK_ONLY|HEAP_KEYS_UPDATED as allowed 2021-02-23 17:30:21 -03:00
.gitignore Add .gitignore to contrib/amcheck. 2017-03-09 22:45:24 -05:00
amcheck--1.0--1.1.sql Add amcheck verification of heap relations belonging to btree indexes. 2018-03-31 19:52:01 -07:00
amcheck--1.0.sql Add amcheck extension to contrib. 2017-03-09 16:33:02 -08:00
amcheck--1.1--1.2.sql Allow amcheck to re-find tuples using new search. 2019-03-20 10:41:36 -07:00
amcheck--1.2--1.3.sql Extend amcheck to check heap pages. 2020-10-22 08:44:18 -04:00
amcheck.control Extend amcheck to check heap pages. 2020-10-22 08:44:18 -04:00
Makefile Extend amcheck to check heap pages. 2020-10-22 08:44:18 -04:00
verify_heapam.c Reinstate HEAP_XMAX_LOCK_ONLY|HEAP_KEYS_UPDATED as allowed 2021-02-23 17:30:21 -03:00
verify_nbtree.c Simplify printing of LSNs 2021-02-23 10:27:02 +01:00