Skip to content

Make connection acquisition timeout also consider the connection creation time #877

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 3 commits into from
Feb 17, 2022

Conversation

bigmontz
Copy link
Contributor

The connection acquisition timeout must account for the whole acquisition execution time, whether a new connection is created, an idle connection is picked up instead or we need to wait until the full pool depletes.

In particular, the connection acquisition timeout (CAT) has precedence over the socket connection timeout (SCT).
If the SCT is set to 2 hours and CAT to 50ms, the connection acquisition should time out after 50ms (as usual, these evil cats win), even if the connection is successfully created within the SCT period.

Note: if SCT is larger than or equal to CAT, a warning should be issued, as this is likely a misconfiguration (and big SCT values won't have any effect on connection acquisitions anyway).

…ion time

The connection acquisition timeout must account for the whole acquisition execution time, whether a new connection is created, an idle connection is picked up instead or we need to wait until the full pool depletes.

In particular, the connection acquisition timeout (CAT) has precedence over the socket connection timeout (SCT).
If the SCT is set to 2 hours and CAT to 50ms, the connection acquisition should time out after 50ms (as usual, these evil cats win), even if the connection is successfully created within the SCT period.

Note: if SCT is larger than or equal to CAT, a warning should be issued, as this is likely a misconfiguration (and big SCT values won't have any effect on connection acquisitions anyway).
@bigmontz bigmontz marked this pull request as ready for review February 15, 2022 18:10
@bigmontz bigmontz force-pushed the 5.0-acquistion-timeout branch from 3bc16a0 to 45137ff Compare February 15, 2022 18:24
@bigmontz bigmontz force-pushed the 5.0-acquistion-timeout branch from 9133aae to 06f3a52 Compare February 16, 2022 11:16
@bigmontz bigmontz merged commit 13e9238 into neo4j:5.0 Feb 17, 2022
@bigmontz bigmontz deleted the 5.0-acquistion-timeout branch February 17, 2022 09:48
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