Thanks for the quick answer.
Our codebase is rather large and old, and prepending a SQL commands to all existing queries would really be annoying.
Butanyway, thank you for the tip. I learn two things from it
- setting the statement_timeout just before the query overwrites the default setting of the driver
- the timeout setting is in milliseconds, not in seconds.
Michaël
________________________________________
De : Richard Hetherington [hetheringtonrichard@hotmail.com]
Date d'envoi : jeudi 25 janvier 2018 18:15
À : Michael Michaud; pgsql-odbc@postgresql.org
Objet : RE: statement timeout with psqlODBC 09.05.300+
I reported this issue a couple of years ago when I figured out the ODBC Command Timeout value configured on a
connectionwas being ignored. I found a work around to prepend this to all queries needing a custom configured COMMAND
timeout.
SET statement_timeout = ( YourCommandTimeoutInSeconds * 1000 );
SELECT * FROM bla;
Hope this helps.
Regards,
Richard Hetherington
Senior Web Developer
Aspire HE Technologies Ltd
(Formally Aztec Retail Solutions Limited)
c/o John Smith & Son Group Ltd
Ash House
Headlands Business Park
Ringwood,
Hampshire
BH24 3PB
Tel: +44 (0)1425 485957 ext. 315
-----Original Message-----
From: michael [mailto:michael.michaud@ign.fr]
Sent: 25 January 2018 15:51
To: pgsql-odbc@postgresql.org
Subject: statement timeout with psqlODBC 09.05.300+
Hi,
This ticket is related to
https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.postgresql-archive.org%2FBUG-odbc-statement-timeout-gets-set-to-30000-td5992591.html&data=02%7C01%7C%7C81c51c8f9a2946fd464e08d5640c496a%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C636524926286264264&sdata=LRP3sJ4c0lqj07OBvbaILmtG5EHXVPhWkBsxadcLOpk%3D&reserved=0
The client using the ODBC Driver is on Windows 7, must be x86 compatible, and connect to a 9.6 postgresql database.
from 09.05.300+ version of the ODBC driver x86 (tested up to 10.01), queries which used to work fine with drivers 08.x
nowthrow "ERROR: canceling statement due to statement timeout;"
It seems that there is now a default setting for statement timeout coming with 9.5+ versions of the driver (less than 1
mn),and I did not find any way to change this setting.
I tried to find a key in the Windows Registry Database or to set the timeout in the connection string but did not find
gooddocumentation and did not succeeded.
Any help woul be appreciated
--
Sent from:
https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.postgresql-archive.org%2FPostgreSQL-odbc-f2186591.html&data=02%7C01%7C%7C81c51c8f9a2946fd464e08d5640c496a%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C636524926286264264&sdata=2MW%2FYoQngU0%2FSs0DlNxqnXY6Ewv8xgDLoZbylNjAss8%3D&reserved=0