-
Notifications
You must be signed in to change notification settings - Fork 155
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
Introduce home database resolution cache #1600
Conversation
9654cdb
to
543e2d4
Compare
10a5e09
to
e6e878d
Compare
813583d
to
8471f76
Compare
This update adds support for Bolt protocol 5.8 and introduces home database resolution cache that works with Bolt protocol 5.8+ when routing scheme is used. The cache is maintained by the driver internally and is not exposed in the API, its purpose is to reduce the number of Bolt exchanges when home database resolution is needed.
8471f76
to
6516dbc
Compare
@@ -208,4 +208,12 @@ public boolean isRoutingTableAged() { | |||
public RoutingTable routingTable() { | |||
return routingTable; | |||
} | |||
|
|||
@Override | |||
public synchronized boolean staleRoutingTable(AccessMode mode) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would isRoutingTableStale
be more fitting?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Discussed
driver/src/main/java/org/neo4j/driver/internal/homedb/HomeDatabaseCacheImpl.java
Show resolved
Hide resolved
driver/src/main/java/org/neo4j/driver/internal/homedb/HomeDatabaseCacheKey.java
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good job! 🎉
This update adds support for Bolt protocol 5.8 and introduces home database resolution cache that works with Bolt protocol 5.8+ when routing scheme is used. The cache is maintained by the driver internally and is not exposed in the API, its purpose is to reduce the number of Bolt exchanges when home database resolution is needed.