You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[jdbc-v2] Handle query timeout in the middle of stream #3077
Query may have execution timeout limit on server. In this case exception will be just SQLException not a SQLTimeoutException.
JDBC do not make driver throw SQLTimeoutException in this case but it would be good to fix for consistency and better error handling.
My plan is to trace how a server-side execution timeout propagates through jdbc-v2 after the response stream has already been opened, and add a regression test where ClickHouse error 159 is received while consuming the ResultSet.
I will then update the JDBC exception mapping so this path throws SQLTimeoutException while preserving the original cause and vendor error code. I will also verify whether synchronous and asynchronous operations share this path and cover both where applicable.
We need verification test in client-v2 to record in tests that we handle timeout while reading stream correctly (may be specific exception would be needed because we want to add timeout to fault cause)
JDBC the main fix - just another test and proper exception wrapping/handling
Activity
jjj-n commentedon Sep 1, 2026
Hi @chernser, I'd like to work on this issue.
My plan is to trace how a server-side execution timeout propagates through jdbc-v2 after the response stream has already been opened, and add a regression test where ClickHouse error 159 is received while consuming the ResultSet.
I will then update the JDBC exception mapping so this path throws SQLTimeoutException while preserving the original cause and vendor error code. I will also verify whether synchronous and asynchronous operations share this path and cover both where applicable.
Does this scope match what you expect for #3077?
chernser commentedon Sep 1, 2026
Good day, @jjj-n !
Sure you can take it!
Thanks!