Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Backport 8.12] Fix hang in bulk helper semaphore when server responses are slower than flushInterval #2129

Merged
merged 1 commit into from
Feb 6, 2024

Commits on Feb 6, 2024

  1. Fix hang in bulk helper semaphore when server responses are slower th…

    …an flushInterval (#2027)
    
    * Set version to 8.10.1
    
    * Add tests for bulk helper with various flush and server timeouts
    
    * Copy and empty bulkBody when flushBytes is reached
    
    Before it was waiting until after semaphore resolved, then sending with
    a reference to bulkBody. If flushInterval is reached after `await
    semaphore()` but before `send(bulkBody)`, onFlushTimeout is "stealing"
    bulkBody so that there is nothing left in bulkBody for the flushBytes
    block to send, causing an indefinite hang for a promise that does not
    resolve.
    
    * comment typo fixes
    
    ---------
    
    Co-authored-by: Quentin Pradet <quentin.pradet@elastic.co>
    (cherry picked from commit 1607a0d)
    JoshMock authored and github-actions[bot] committed Feb 6, 2024
    Configuration menu
    Copy the full SHA
    e3c18a8 View commit details
    Browse the repository at this point in the history