Re: Statement.setQueryTimeout() with autoCommit=false
От | dmp |
---|---|
Тема | Re: Statement.setQueryTimeout() with autoCommit=false |
Дата | |
Msg-id | 50C0E09A.4070408@ttc-cmc.net обсуждение исходный текст |
Ответ на | Re: Statement.setQueryTimeout() with autoCommit=false (Dave Cramer <pg@fastcrypt.com>) |
Ответы |
Re: Statement.setQueryTimeout() with autoCommit=false
|
Список | pgsql-jdbc |
Exactly. According to the Java API: void setAutoCommit(boolean autoCommit) throws SQLException Sets this connection's auto-commit mode to the given state. If a connection is in auto-commit mode, then all its SQL statements will be executed and committed as individual transactions. Otherwise, its SQL statements are grouped into transactions that are terminated by a call to either the method commit or the method rollback. By default, new connections are in auto-commit mode. By setting setAutoCommit(false) you are deciding to tell the database your code will determine when to commit the transaction. Thereby I would say overiding setQueryTimeout(). danap. Dave Cramer wrote: > Why would the query timeout at all ? > > The query timeout is for long running queries. If the query takes longer > than n seconds it will timeout. > > Dave > > Dave Cramer > > dave.cramer(at)credativ(dot)ca > http://www.credativ.ca > > > > On Thu, Dec 6, 2012 at 12:04 PM, <pavel.arnost@loutka.cz > <mailto:pavel.arnost@loutka.cz>> wrote: > > Hi, > > does setQueryTimeout work with autoCommit=false? When autoCommit is > true, this code timeouts after 5 seconds (as expected): > > ~ > ~ > ~ > -- > > But if I set autoCommit to false, this code timeouts after 30 > seconds on read timeout: > > -- > ~ > ~ > ~ > -- > > I'm confused what's setQueryTimeout() method for, why it doesn't > work with manual transactions?
В списке pgsql-jdbc по дате отправления: