Search Postgresql Archives

Asynchronous Query processing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I have a need to do asynchronous query processing.  I am a little confused by the order and frequency of calls.  Can someone tell me if the below is correct?  The code comments are littered with my questions.

PQsendQueryParams(pgconn, "SELECT ..", ....);

while(1)
{
  epoll/poll/select PQsocket(pgconn) [read]

  // call this each time poll indicates data is ready?
  PQconsumeInput(pgconn);

  // If isBusy returns 1, just poll again?  Will this indicate 0 when I have a full PGResult set?
  // Or, can it split the results of a single statement across multiple result sets.
  if(PQisBusy())
    conitnue;

  // I know the docs say keep calling getResult until it returns NULL.  In my
  // case, I am wondering if that is needed.  I only send one statement at a
  // time to the server.  The connection is not listening for notifies either.  Do
  // I still need to call getResult multiple times?  I saw many examples online
  // that DO NOT call it multiple times, all of them executed a single statement.
  res = PQgetResult(pgconn);
 
  process_results(res);
}

thanks, brendon

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux