I have updated the 7.4.X does and CVS head docs to mention that ecpg SET
CONNECTION is not thread-aware, and I have added this to the ecpg TODO:
o Make SET CONNECTION thread-aware
---------------------------------------------------------------------------
Philip Yarra wrote:
> Hi Demetres, I'm the guy whose emails you quoted below!
>
> You *must* always use the AT conn_name in a multi-threaded application...
> using SET CONNECTION will not work.
>
> I assume your test results work if you use the thread test application as
> included (I wrote it, so I'd be interested to know if it works, as I have
> not tested RH9 and SunOS5.8 (though I tested RH7.3 and SunOS2.6)
>
> Regards, Philip Yarra.
>
> On Thu, 4 Dec 2003, Demetres Pantermalis wrote:
>
> > Dear All,
> >
> > trying to run some tests for the thread-safety of the ecpg library, I
> > modified the test_thread.pgc to be like the one attached (test_thread1.pgc).
> >
> > The changes are as follows:
> > 1) All the connections used for insertions, begin in main function (and not
> > inside each thread)
> > 2) The statement "EXEC SQL SET CONNECTION <conn> followed by the inserts is
> > used, instead of the"EXEC SQL AT <conn> ..." statement.
> > 3) A new line for ECPGlog was added.
> >
> > The results of executing the code are unexpected. Either a core dump
> > results, or one of the two threads inserts the rows in the table and the
> > process never returns to OS prompt, while the other thread seems to insert
> > the rows, but never commits.
> >
> > A log file produced by ECPGlog is also attached.
> >
> > Platforms tested: SunOS 5.8 and Linux RH9 (with the same results)
> >
> > Any suggestions appreciated.
> >
> > PS. I've found out that somebody else had about the same problem, but that
> > was during testing phase and I assumed that it could have been solved by
> > now. The links found are:
> > http://archives.postgresql.org/pgsql-hackers/2003-06/msg00513.php
> > http://archives.postgresql.org/pgsql-hackers/2003-06/msg00792.php
> >
> > Demetres Pantermalis
> > Intracom SA
> > Network Support Systems.
> >
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster
>
-- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610)
359-1001+ If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square,
Pennsylvania19073