[SQL] No response from the backend

2011-12-07 Thread feng.zhou
Hi
There are some questions when using progreSQL8.4.2. I don't sure this problem 
is bug.The detail is following:
I make a client program that communicate with  progreSQL by ODBC on Windows7. 
After running serveral months, this client program is hung at 00:01 in 
2011-11-26 , and become OK after 8 hours.When becoming OK, client program log 
message is following: 

2011/11/26 08:38:05.527,  : SQL ERROR: GetSelectRowNum: No response from the 
backend;
No response from the backend
2011/11/26 08:38:05.527,   : SQL ERROR: GetSelectRowNum: State:42601,Native:26
2011/11/26 08:38:05.527,   : SQL ERROR: GetSelectRowNum: Could not send 
Query(connection dead);
Could not send Query(connection dead)

I don't know how to solve this problem. Someone can explain this problem 
cause.Thanks

2011-12-07 



feng.zhou 


[SQL] Re: Re: [SQL] No response from the backend

2011-12-07 Thread feng.zhou
Thanks for your answer.
The client and server run on the same machine(Windows7). They are connected by 
ODBC.The client accesses server by call ODBC API.Connection and query timeout 
don't be set in the client. 


2011-12-08 



feng.zhou 



发件人: Craig Ringer 
发送时间: 2011-12-07  21:03:46 
收件人: feng.zhou 
抄送: pgsql-sql 
主题: Re: [SQL] No response from the backend 
 
On 12/07/2011 07:27 PM, feng.zhou wrote: 
Hi
There are some questions when using progreSQL8.4.2. I don't sure this problem 
is bug.The detail is following:
I make a client program that communicate with  progreSQL by ODBC on Windows7. 
After running serveral months, this client program is hung at 00:01 in 
2011-11-26 , and become OK after 8 hours.When becoming OK, client program log 
message is following: 

2011/11/26 08:38:05.527,  : SQL ERROR: GetSelectRowNum: No response from the 
backend;
No response from the backend
2011/11/26 08:38:05.527,   : SQL ERROR: GetSelectRowNum: State:42601,Native:26
2011/11/26 08:38:05.527,   : SQL ERROR: GetSelectRowNum: Could not send 
Query(connection dead);
Could not send Query(connection dead)

I don't know how to solve this problem. Someone can explain this problem 
cause.Thanks

I'd say you had a connectivity drop-out, and it only recovered when your TCP/IP 
connection timed out. Reduce your TCP/IP timeouts and/or enable keepalives if 
you have an unreliable network connection between client and server.

If that's not the case, then more detail please. Where do the client and server 
run (same machine?)? How are they connected? etc.

--
Craig Ringer


[SQL] Re: Re: [SQL] No response from the backend

2011-12-07 Thread feng.zhou
Thanks, I will try it


2011-12-08 



feng.zhou 



发件人: Craig Ringer 
发送时间: 2011-12-08  11:49:33 
收件人: feng.zhou 
抄送: pgsql-sql 
主题: Re: [SQL] No response from the backend 
 
On 12/08/2011 09:38 AM, feng.zhou wrote: 
Thanks for your answer.
The client and server run on the same machine(Windows7). They are connected by 
ODBC.The client accesses server by call ODBC API.Connection and query timeout 
don't be set in the client. 



Since client and server are on the same host, it's unlikely to be network 
connectivity. Check the server logs.

--
Craig Ringer


[SQL] Query Timeout Question

2011-12-08 Thread feng.zhou
Hi
I set query timeout in code by using SQLSetStmtAttr ODBC API .

SQLSetStmtAttr( StatementHandle, SQL_ATTR_QUERY_TIMEOUT, (SQLPOINTER)timeout, 0 
) ;
SQLExecute(StatementHandle);

But I find this setting has no effect.Before adding timeout setting, SQLExecute 
costs 47 seconds.After adding timeout, costing time is same.
Postgres SQL version 8.4.2, ODBC driver 8.4.2

2011-12-09 



feng.zhou 


Re: [SQL] Query Timeout Question

2011-12-08 Thread feng.zhou
sorry, timeout is 15 seconds


2011-12-09 



feng.zhou 



发件人: feng.zhou 
发送时间: 2011-12-09  09:25:49 
收件人: pgsql-sql 
抄送: 
主题: [SQL] Query Timeout Question 
 
Hi
I set query timeout in code by using SQLSetStmtAttr ODBC API .

SQLSetStmtAttr( StatementHandle, SQL_ATTR_QUERY_TIMEOUT, (SQLPOINTER)timeout, 0 
) ;
SQLExecute(StatementHandle);

But I find this setting has no effect.Before adding timeout setting, SQLExecute 
costs 47 seconds.After adding timeout, costing time is same.
Postgres SQL version 8.4.2, ODBC driver 8.4.2

2011-12-09 



feng.zhou 


[SQL] Re: Re: [SQL] Query Timeout Question

2011-12-08 Thread feng.zhou
Thanks for your reply.
if timeout setting doesn't be supported, How to solve this question that the 
client is hung for long time when executing time-comsuming query or query a 
locked table.


2011-12-09 



feng.zhou 



发件人: Craig Ringer 
发送时间: 2011-12-09  10:05:44 
收件人: feng.zhou 
抄送: pgsql-sql 
主题: Re: [SQL] Query Timeout Question 
 
On 12/09/2011 09:44 AM, feng.zhou wrote: 
Hi
I set query timeout in code by using SQLSetStmtAttr ODBC API .

SQLSetStmtAttr( StatementHandle, SQL_ATTR_QUERY_TIMEOUT, (SQLPOINTER)timeout, 0 
) ;
SQLExecute(StatementHandle);

But I find this setting has no effect.Before adding timeout setting, SQLExecute 
costs 47 seconds.After adding timeout, costing time is same.

First: You're using a very old patch release with known bugs. Update to 8.4.10 .

As for the timeout: PostgreSQL doesn't support query timeouts. It supports a 
session-level statement timeout. I don't know whether the ODBC driver uses that 
or not. Examine the ODBC `mylog' output after enabling psqlODBC debugging, and 
examine the server log after turning on query logging, so you can see what the 
ODBC driver actually asks the server for when you set a query timeout.

--
Craig Ringer