"Eric Simon" <esimon(at)theiqgroup(dot)com> writes:
> Now that I've established some context, here's where I'm at: I've written
> $sth->cancel() for DBD::Pg using PQcancel(), and it works (it returns the
> status 57014: QUERY CANCELED). The problem is that the $sth->execute call
> (which resides between the two alarm() calls above) doesn't continue on, but
> rather stays frozen, waiting for data. Does PQcancel not communicate back
> to the execute statement so that it unblocks?
Um ... PQcancel returns no such thing, only true or false. I'm guessing
you've coded your signal handler in such a way that it eats the query
result message intended for the mainline execute code. You should not
be calling anything except PQcancel itself in the signal handler.
regards, tom lane