Re: FastPath blocked when ERROR is thrown - Mailing list pgsql-jdbc

From Dave Cramer
Subject Re: FastPath blocked when ERROR is thrown
Date
Msg-id AC201B08-CFA2-4F2F-9C20-2240A1429B9D@fastcrypt.com
Whole thread Raw
In response to FastPath blocked when ERROR is thrown  ("Yi Lin" <ylin30@cs.mcgill.ca>)
List pgsql-jdbc
If you managed to kill the backend, then it's likely the C function
that did it. In order to debug it you can use gdb

Can you call the C function from psql without crashing ?

Dave
On 11-Apr-06, at 6:06 PM, Yi Lin wrote:

> HI
>
> I used java API FastPath.fastpath(fid, ...) to call a C function
> PGfn(conn, fid,...) in the kernal. But if there is an exception (i.e.,
> ERROR messages is thrown in the backend due to elog(ERROR, ...)), the
> FastPath.fastpath(fid, ..) is blocked and never returns. The DB
> backend is
> also dead. I have to "pkill -9 post" in order to restore
> everything. Can
> anyone give a clue of what the problems should be? Where should are
> the
> bugs possibly located?
>
> The java codes is attached:
>
> public boolean putWriteSet(java.sql.Connection conn, byte[] writeSet)
>   throws SQLException
> {
>    Fastpath fp = ((org.postgresql.Connection)conn).getFastpathAPI();
>    FastpathArg[] args = new FastpathArg[1];
>    args[0] = new FastpathArg(writeSet);
>    fp.fastpath(2075, false, args);   //to apply writeset,
> indirectly call
> PQfn(conn, 2075, ...) implemented in the kernal in C.
>
>    return true;
> }
>
> I am not the original author of C version PQfn(.,2075,..) so I have no
> idea where and how to debug it. I doubt that the blocking is due to
> implementation of C part instead of Java part. But I don't know how to
> start my debugging.
>
> thanks in advance!
>
> =======================================
> Yi Lin
>
> Ph.D. candidate
> School of Computer Science
> McGill University
> Montreal, Quebec,Canada
> URL: http://www.cs.mcgill.ca/~ylin30/
>
>        \\\ $ ///
>          @   @
> ======o0o==0==o0o======================
>
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 2: Don't 'kill -9' the postmaster
>


pgsql-jdbc by date:

Previous
From: "Yi Lin"
Date:
Subject: FastPath blocked when ERROR is thrown
Next
From: "Wei Wei"
Date:
Subject: Re: Calendar vs. Timestamp