Skip to content

Improve connection pool concurrent access #1035

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

Merged
merged 1 commit into from
Oct 15, 2021

Conversation

injectives
Copy link
Contributor

This update introduces read/write lock for internal pool map access management. For instance, the retainAll method is executed with write lock.

This update introduces read/write lock for internal pool map access management. For instance, the `retainAll` method is executed with write lock.
@injectives injectives requested a review from gjmwoods October 15, 2021 09:35
@injectives injectives merged commit 3b2b564 into neo4j:4.4 Oct 15, 2021
@injectives injectives deleted the feature/threads branch October 15, 2021 11:11
injectives added a commit to injectives/neo4j-java-driver that referenced this pull request Oct 29, 2021
This update introduces read/write lock for internal pool map access management. For instance, the `retainAll` method is executed with write lock.
injectives added a commit that referenced this pull request Oct 29, 2021
…alSummaryCounters update and Testkit launch fix (#1052)

* Fix sync and async testkit backends launch (#1027)

* Add toString to InternalSummaryCounters (#1031)

* Make AddressSet retain resolved addresses (#1034)

Routing table address set update may override resolved router address. This leads to routing connection pool closures. This update aims to optimise this.

* Improve connection pool concurrent access (#1035)

This update introduces read/write lock for internal pool map access management. For instance, the `retainAll` method is executed with write lock.

* Replace AddressSet with standard Java collections (#1037)

* Replace AddressSet with standard Java collections

This update also prevents unnecessary connection pool closures by keeping `disused` addresses until next routing table update and reusing them.

* Update reader, writer and router addresses handling and change type
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.

2 participants