v3.135.15
·
74 commits
to master
since this release
database/sqldriver (no public API changes):QueryContext/Stmt.QueryContext/Tx.QueryContextcancellation propagated through row iteration consistently—the SQLRowsadapter retained that context for everyNext,NextResultSet, and column-metadata call, and both Query Service and Table Service backends received it where supported.- When using QueryService (
ydb.WithQueryService(true), default), canceling the query context after starting to read a result set surfacedcontext.Canceledfrom(*sql.Rows).Err()afterNextstopped, matching typicaldatabase/sqlexpectations for context-aware queries. - When using TableService (
ydb.WithQueryService(false)), row iteration continued to rely on the table client read path;Rows.Err()after cancel could be empty orio.EOFonce rows were exhausted, rather than the cancellation error. - Replaced internal query-client "done" signal channels with
atomic.Boolto improve performance:- Reduced allocations per query and decreased latency for each query.
- Disabled cascading cancellation of all child operations, such as canceling a query on session close or query-client close — YDB server is supposed to cancel query executions on closing sessions.
Full Changelog: v3.135.14...v3.135.15