Skip to content

Forget CC members on DatabaseUnavailable #276

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
Jul 26, 2017

Conversation

lutovich
Copy link
Contributor

This PR makes routing driver forget Causal Cluster members when they fail with Neo.TransientError.General.DatabaseUnavailable error code. It means database is either shutting down or doing store copy. Generally we should not hammer database in such state with new requests and give it some time to either recover (in case of store copy) or just stop using it.

Also restructured a bit error handling code in RoutingDriver and RoutingSession.

@lutovich lutovich force-pushed the 1.5-forget-on-DatabaseUnavailable branch from 4b74096 to a1c3d8b Compare July 20, 2017 15:43
This commit makes routing driver forget Causal Cluster members when
they fail with `Neo.TransientError.General.DatabaseUnavailable` error
code. It means database is either shutting down or doing store copy.
Generally we should not hammer database in such state with new requests
and give it some time to either recover (in case of store copy) or
just stop using it.

Also restructured a bit error handling code in `RoutingDriver` and
`RoutingSession`.
@lutovich lutovich force-pushed the 1.5-forget-on-DatabaseUnavailable branch from a1c3d8b to 56b1079 Compare July 20, 2017 17:20
@lutovich lutovich requested a review from zhenlineo July 21, 2017 08:37
@zhenlineo zhenlineo merged commit 3af0f80 into neo4j:1.5 Jul 26, 2017
@lutovich lutovich deleted the 1.5-forget-on-DatabaseUnavailable branch July 27, 2017 11:14
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