imbajin opened a new pull request, #3345: URL: https://github.com/apache/hugegraph/pull/3345
## Purpose of the PR Follow up on [ASF #3303](https://github.com/apache/hugegraph/pull/3303) and [the cancellation review feedback](https://github.com/hugegraph/hugegraph/pull/280#discussion_r4240430733). Before, a batch-scan half-close or receipt could wait for a slow iterator while holding the request manager lock. Later transport cancellation then waited for that lock and could not reach the reader interrupt. ## Main Changes Keep request state and worker publication under the manager lock; perform worker scheduling, notification and cleanup after releasing it. Cancellation can now interrupt an interruptible reader while half-close is waiting. Native RocksDB calls retain their existing cooperative cancellation limits. ## Verifying these changes - [x] Need tests and can be verified as follows: - The actual Store service/context regression fails before the fix and passes after it, requiring interruption and iterator/owner cleanup before fallback release. - Existing Store lifecycle, half-close and shutdown tests pass against this worktree's reactor targets. - JDK 17 root compile, EditorConfig formatting and diff checks pass. ## Does this PR potentially affect the following parts? - [ ] Dependencies - [ ] Modify configurations - [ ] The public API - [x] Other affects: Store batch-scan cancellation during a slow read. - [ ] Nope ## Documentation Status - [x] `Doc - Done`: `docs/storage-lifecycle.md` describes the manager-lock boundary. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
