You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Sylvain Lebresne (JIRA)" <ji...@apache.org> on 2018/09/05 10:22:00 UTC

[jira] [Commented] (CASSANDRA-14683) Pagestate is null after 2^31 rows

    [ https://issues.apache.org/jira/browse/CASSANDRA-14683?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16604239#comment-16604239 ] 

Sylvain Lebresne commented on CASSANDRA-14683:
----------------------------------------------

Thinking about this, while we certainly should up/remove the limit supported for this, I think the sub-part that really matter the most here is solving the case of queries without no limit at all, which doesn't require increasing the resolution of the limit in the {{PagingState}}, at least not in theory.

In fact, it might be worth fixing that case in 3.x as well, which I think we can do by starting to interpret {{Integer.MAX_VALUE}} as "no limit". That is, all we'd change here is that when a new page request has {{Integer.MAX_VALUE}} as {{remaining}} in his {{PagingState}}, we'll execute the query exactly like today, but we'll simply make sure that the newly returned {{PagingState}} still has {{Integer.MAX_VALUE}} as {{remaining}}.

I'll note that this would strictly speaking break backward compatibility in the sense that if some user was using {{Integer.MAX_VALUE}} as concrete user LIMIT *expecting* the query to not return anymore rows, we would now return more rows after this change. It's a wacky enough case that it's imo worth breaking so the *much* more common case of "I want all my rows" actually works.


> Pagestate is null after 2^31 rows
> ---------------------------------
>
>                 Key: CASSANDRA-14683
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14683
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Abhishek
>            Priority: Major
>
> I am using the nodejs driver to take a dump of my table via [pagination|http://datastax.github.io/nodejs-driver/features/paging/#manual-paging] for a simple query.
> My query is \{{select * from mytable}}
> The table has close to 4 billion rows and cassandra stops returning results exactly after 2147483647 rows. The pagestate is not returned after this.
> Cassandra version - 3.0.9
> Nodejs cassandra driver version - 3.5.0



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org