On Fri, 12 Nov 1999, V Krishnaraj wrote:

> Hi,
> 
> I'm having a postgres database accessed from perl using DBI and 
> DBD.
> 
> This application works fine when we are in single user. When we 
> go into multi-user, the app has concurrency problems.
> 
> The application has a sql query and updates onto the base table in 
> the sql query. We are using Select FOR UPDATE to open the 
> cursor and multiple update statements to update values on different 
> base tables. When multiple users are running the program, after a 
> few iterations postmaster startsputting out messages that there are 
> concurrency problems due to which the execute before the fetch 
> fails.
> What I want to do is to wait for the other transactions updates to 
> get over and retry opening the cursor. This does not happen.
> The moment I try to open the cursor again (using execute), 
> postmaster says that there is no connection !!
> 
> If I try and reconnecting again it starts giving pqreaddata() problems.
> After sometime server crashes !!
> 
> We are using postgres 6.5.1, DBI-1.13, DBD 0.92
> 
> Please somebody help.
> 
> Thanks and regards,
> 
> Kimi

I 'm using :

LOCK <<tablename>> IN ACCESS EXCLUSIVE MODE;

to control concurrent transactions - it works for me
(postgres 6.5.2)

 
************************************
Marcin Inkielman

************************************
               .~.
               /V\
              // \\
             /(   )\
              ^`~'^

         powered by Linux
               ----

        sibi omino similis?
************************************


************

Reply via email to