Re: I'm puzzled by a foreign key constraint problem

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Jonathan Guthrie <jguthrie(at)brokersys(dot)com>
Cc: Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>, "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org>
Subject: Re: I'm puzzled by a foreign key constraint problem
Date: 2008-11-04 21:05:13
Message-ID: 27743.1225832713@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Jonathan Guthrie <jguthrie(at)brokersys(dot)com> writes:
> ... or, at least, it's supposed to. Those two operations are not supposed
> to overlap at all even if they're on two different connections. I
> thought I had verified this by looking at the log file. I mean, I can
> look at the log file and see things like

> 2008-11-03 16:29:22 CST DEBUG: 00000: StartTransactionCommand
> and
> 2008-11-03 16:29:22 CST DEBUG: 00000: CommitTransactionCommand

> where I would expect them to if what I'm expecting is going on, but the
> log file doesn't appear to have enough information to see a transaction
> created, proceed, and then end. That is, how do I know which
> transaction was started and which one was committed?

You need to add more identification info to your log_line_prefix.
The PID would be the most reliable way to tie those entries together,
but I think there's also an option that writes the transaction ID.

> I'm kind of confused by lines like this:

> 2008-11-03 16:29:22 CST DEBUG: 00000: name: unnamed; blockState: INPROGRESS; state: INPROGR, xid/subid/cid: 678145/1/4, nestlvl: 1, children: 678146 678147

> Is there an easy explanation somewhere?

You'd have to look at the source code to figure out most of the
DEBUG-level messages.

regards, tom lane

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2008-11-04 21:14:27 Re: postgresql and Mac OS X
Previous Message Tom Allison 2008-11-04 21:02:27 Re: postgresql and Mac OS X