Re: server dropping connection

From: Volkan YAZICI <yazicivo(at)ttnet(dot)net(dot)tr>
To: Reed Loefgren <rloef(at)interfold(dot)com>
Cc: pgsql-php(at)postgresql(dot)org
Subject: Re: server dropping connection
Date: 2006-05-03 09:19:38
Message-ID: 20060503091937.GA205@alamut
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-php

On May 02 06:13, Reed Loefgren wrote:
> I've been trying to run a nested query via a browser using a php script.
> The script looks at a table with a couple years worth of data (6M rows).
> If I constrain the search to five or six days of the data it works fine
> and displays the result set in the browser, but if I have it parse the
> entire table it errors out with this message:
>
> server closed the connection unexpectedly This probably means the server
> terminated abnormally before or while processing the request.

Just making rhetoric: You removed script execution time limits via
set_time_limit(), right?

I'll suggest turning error_reporting() to E_ALL and using asynchronous
query execution functions, instead of synchron ones. For instance:

$query_cmd = "SELECT ...";
$res = pg_send_query($conn, $query_cmd);
if (!$res)
{
/* Error handling stuff... */
}

while (pg_connection_busy($conn))
{
/*
* Sorry, no clue about connection socket in here.
* We're waiting without select() or poll().
* (I know, I know... PHP sucks.)
*/
usleep(100000); /* 0.1 seconds. */
}

/* Seems like result is ready now. */

$res = pg_get_result($conn);
if (!$res)
{
/* Error handling. */
}

IMHO, this method can output more verbose (and accurate?) query status
when compared to an odd pg_query() call.

Regards.

In response to

Browse pgsql-php by date

  From Date Subject
Next Message chris smith 2006-05-03 12:45:45 Re: Select and order by question
Previous Message kmh496 2006-05-03 09:14:45 Re: server dropping connection