HI, On Thu, Feb 6, 2020 at 3:24 PM Fujii Masao <masao.fu...@oss.nttdata.com> wrote: > > I added a new (but minimal) isolation test for the case of tid scan. > > (v12 and HEAD will be failed this test. v11 and HEAD with my patch > > will be passed) > > Isn't this test scenario a bit overkill? We can simply test that > as follows, instead. > CREATE TABLE test_tidscan AS SELECT 1 AS id; > BEGIN ISOLATION LEVEL SERIALIZABLE; > SELECT * FROM test_tidscan WHERE ctid = '(0,1)'; > SELECT locktype, mode FROM pg_locks WHERE pid = pg_backend_pid() AND mode = > 'SIReadLock'; > COMMIT; > > In the expected file, the result of query looking at pg_locks > should be matched with the following. > > locktype | mode > ----------+------------ > tuple | SIReadLock Thanks for your reply. Hmm, it's an simple and might be the better way than adding isolation test.
I added above test case to regress/sql/tidscan.sql. Attach the patch. Best regards, -- Tatsuhito Kasahara kasahara.tatsuhito _at_ gmail.com
fix_tidscan_issues_v3.patch
Description: Binary data