Skip to content

Bound DocOps bulk operations with a timeout on the aggregate block() - #56

Open
ShivamPaliwal1 wants to merge 1 commit into
couchbaselabs:mainfrom
ShivamPaliwal1:fix/docops-bulk-block-timeout
Open

Bound DocOps bulk operations with a timeout on the aggregate block()#56
ShivamPaliwal1 wants to merge 1 commit into
couchbaselabs:mainfrom
ShivamPaliwal1:fix/docops-bulk-block-timeout

Conversation

@ShivamPaliwal1

Copy link
Copy Markdown
Contributor

Per-op timeouts on insert/upsert/get/delete/replace/touch only guarantee a single request terminates; if the shared reactor scheduler wedges under heavy backpressure (e.g. concurrent disk-full workloads), that signal can fail to reach the blocked caller and .block() hangs the JVM indefinitely. Adding an explicit .timeout() on the aggregate collectList() gives each bulk call its own backstop instead of relying solely on an external stall-watchdog to kill the process.

Per-op timeouts on insert/upsert/get/delete/replace/touch only guarantee a
single request terminates; if the shared reactor scheduler wedges under
heavy backpressure (e.g. concurrent disk-full workloads), that signal can
fail to reach the blocked caller and .block() hangs the JVM indefinitely.
Adding an explicit .timeout() on the aggregate collectList() gives each
bulk call its own backstop instead of relying solely on an external
stall-watchdog to kill the process.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant