-
Notifications
You must be signed in to change notification settings - Fork 24
Feature/joins #133
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
Feature/joins #133
Conversation
| /* added in V4 */ | ||
| public static final int TABLE_NOT_READY = 26; | ||
| public static final int UNSUPPORTED_QUERY_VERSION = 27; | ||
| /* added in V5 */ |
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.
It seems we don't have serial version V5, the current version is V4 that is for NSON protocol I think. So maybe no need this comment?
| * The query must be recompiled after DDL changes on the tables and/or | ||
| * indexes that are accessed by the query. | ||
| */ | ||
| public class PrepareQueryException extends NoSQLException { |
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.
The new PrepareQueryException is public, maybe add a change log entry for it?
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.
Will the driver with simplified VirtualScan working with the older version proxy which expects the full table resume info in VirtualScan(e.g. the released proxy in KV 24.4)?
On the other hand, the driver 5.4.16 or older version which provides full table resume info in VirtualScan seems work with the newer proxy which expects simplified VirtualScan, fields other than the sid and pid will be ignored, right?
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.
I have just pushed a fix to the problem of new driver, old proxy. The new driver uses a new query version (V5). It will initially send the simplified VirtualScan to the proxy. If the proxy is old, it will throw an UNSUPPORTED_QUERY_VERSION exception. The driver will then downgrade its version and will start sending the full VirtualScan to the proxy.
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.
HI @markoszah, the decrementQueryVersion() seems need to be enhanced to support V5 -> V4 -> V3 accordingly, currently it supports V4 -> V3 only.
Simplified VirtualScan info and introduced new PrepareQueryException