Skip to content
This repository has been archived by the owner on Jan 2, 2023. It is now read-only.

Prevent starvation in case of many concurrent requests and timeouts #123

Closed
wants to merge 1 commit into from

Conversation

TalLevAmi
Copy link
Contributor

In case there are many concurrent requests and the callbacks for the futures create more requests, there is starvation of existing requests. If there are timeouts involved, they may be triggered because of this starvation, but this is undesired behavior even without timeouts.
Also, in case there is a timeout, the id = nil line in flush_request_queue causes it to miss out on the event, which in extreme cases make cause the system to go into a state in which there are requests waiting, but they will never be sent.

@TalLevAmi
Copy link
Contributor Author

Moved to datastax/ruby-driver

@TalLevAmi TalLevAmi closed this Sep 28, 2014
@iconara iconara reopened this Sep 28, 2014
@iconara
Copy link
Owner

iconara commented Sep 28, 2014

Merged to master (in case a bug fix release for 2.0.x is needed).

@iconara iconara closed this Sep 28, 2014
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants