Maintenance release (bug and documentation fixes)
API changes:
- None.
Big Features:
- None.
Improvements:
- Fixed a pair of related regressions introduced in the v1.3.0 concurrency refactor relating to retryable temporary errors on chunk start and chunk poll:
- Query manager had stopped respecting the
Config.Parallel
limit. This was tending to cause unnecessaryLimitExceededException: Account maximum query concurrency limit of [10] reached
errors. These were being retried up to the temporary errors limit so sometimes they did not affect the outcome of a query, but sometimes they revealed the second issue...: - Issue #15. In some cases, if a chunk's temporary start or polling error limit was exceeded, this would cause the chunk to basically be "forgotten" without its termination being recorded in the stream bookkeeping structures. This would eventually result in someone blocking on a stream read forever. The fix is to ensure the stream errors out if any chunk fails due to exceeding its temporary retry max.
- Query manager had stopped respecting the
- Corrected a logic error in the dynamic splitting documentation.