Re: PQsendQuery/ PQgetResult Problem

From: Merlin Moncure <mmoncure(at)gmail(dot)com>
To: Usama Dar <munir(dot)usama(at)gmail(dot)com>
Cc: pgsql-hackers list <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: PQsendQuery/ PQgetResult Problem
Date: 2011-10-07 16:34:46
Message-ID: CAHyXU0wzh4RJJ893geDujv+bw1HjJGbiSDPnm7MRHxJQd6t7NA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Fri, Oct 7, 2011 at 11:17 AM, Usama Dar <munir(dot)usama(at)gmail(dot)com> wrote:
> Hi Hackers,
> I have a strange problem, or maybe it's not a strange problem but just
> something wrong with my understanding i have SIP router which works with
> postgresql using libpq, somewhere in the code it inserts a row in the
> database and then when the insert is finished it invokes another module
> which tries to read it , however sometimes the read operation doesn't find
> the row which was just inserted, this happens if there are large number of
> insert / read cycles like this are going on , the code which inserts the row
> uses PQsendQuery to insert and waits for PQgetResult to return null before
> the read module is invoked, the module which reads the row , reads it over a
> new connection. My question is if PQgetResult returns null is this  a good
> enough guarantee that a subsequent connection (even in next millisecond)
> should be able to read that row??
> Thanks for making me wiser
> /Usama

yeah -- Iron clad rule is that if you get the result and are able to
see that your query has been successfully transacted, so should
everyone else. Are you sure your query didn't error out? Are you
also sure you didn't open a transaction and not close it? our problem
is most likely on your end.

merlin

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Alex Hunsaker 2011-10-07 16:45:29 Re: alter table only ... drop constraint broken in HEAD
Previous Message Robert Haas 2011-10-07 16:25:08 Re: [v9.2] make_greater_string() does not return a string in some cases