-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
not seeing all rows when using Presto against YugaByte using Cassandra connector #312
Comments
The issue is an incompatibility with Cassandra w.r.t. the handling token range queries and using the minimum token value ( Concretely, when Presto splits the token range into partitions it generates queries of the form:
For the last of the generated splits, the |
Summary: In Cassandra using min token value (INT64_MIN) as an upper bound is specially interpreted to include all token hashes (rather than none). This behavior is used, for instance, by Presto when splitting the entire token range into partitions. Test Plan: jenkins, ql-query-test.cc Reviewers: pritam.damania, robert Reviewed By: robert Subscribers: yql Differential Revision: https://phabricator.dev.yugabyte.com/D4911
Nice work @m-iancu in helping track this down and rolling out a fix so quickly. |
Closed by b6248d5. |
PG-320: Removing the query state code from the view.
Steps to repro:
Launch a vanilla YugaByte pseudo-distributed cluster.
Create a YCQL (cassandra) table and insert some rows using
cqlsh
. Sample script:Verify rows exist from cqlsh:
Configure & Launch Presto server against
And, next, test from presto's CLI:
Notice that from presto we are only seeing 12 of the 16 expected rows.
It seems that there is some inconsistency in the way the splits (for the tablets in the table) are handled/discovered and queried via the token() builtin. And we might be missing one of the splits..
The text was updated successfully, but these errors were encountered: