FK locking concurrency improvement - Mailing list pgsql-hackers

From Daniel Wood
Subject FK locking concurrency improvement
Date
Msg-id 519A79C6.90308@salesforce.com
Whole thread Raw
Responses Re: FK locking concurrency improvement  (Alvaro Herrera <alvherre@2ndquadrant.com>)
Re: FK locking concurrency improvement  (Alvaro Herrera <alvherre@2ndquadrant.com>)
List pgsql-hackers
As part of 0ac5ad5134f2769ccbaefec73844f8504c4d6182
the permutations in test/isolation/fk-deadlock2.spec and elsewhere were 
removed.  Is it the intent that these tests no longer do anything 
useful?  I was expecting a failure in the test with some work I'm doing 
and was confused, after a merge from the upstream 9.3, that the test 
didn't fail until I noticed the test is no longer running the permutations.

FYI, I saw some comments and adding fflush's into isolationtester.c.  I 
ran into the same problem with debugging tests when they failed/hung in 
the middle.  A simple "setbuf(stdout, NULL)" at the beginning of main 
gets rid of the problem where line buffering becomes block buffering 
when redirecting stdout to a file.  This causes problems with sequencing 
of mixed stderr and stdout and not seeing the last few lines of stdout 
if the process fails or hangs.  The setbuf on stdout shown above 
disables buffering of stdout to match the unbuffered stderr.

That way you don't need to fflush after each printf/fprintf.  I'm not 
sure why fflush of stderr was added because it isn't buffered to begin 
with so is unnecessary.  The problem was with stdout.  YMMV on windows 
but might work.

- Dan



pgsql-hackers by date:

Previous
From: Simon Riggs
Date:
Subject: Re: Fast promotion failure
Next
From: Bruce Momjian
Date:
Subject: Re: Proposal to add --single-row to psql