"Qingqing Zhou" <zhouqq@cs.toronto.edu> writes:
> The reason I raise this question is because I corrupted pg_trigger by
> concurrently perform drop/create table (with foreign keys).
That should be impossible because drop/create take out locks at the
table level. Can you provide a reproducible test case?
If you can't make it happen easily by hand, one possible way to proceed
is to run one or both sessions under gdb and set breakpoints at key
places like recursiveDeletion(). If there is a timing issue it should
be possible to expose it by delaying a process at the right places in
this way.
regards, tom lane