Return-Path: X-Original-To: apmail-cassandra-user-archive@www.apache.org Delivered-To: apmail-cassandra-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 71CC8FB2F for ; Mon, 13 May 2013 01:26:56 +0000 (UTC) Received: (qmail 98206 invoked by uid 500); 13 May 2013 01:26:53 -0000 Delivered-To: apmail-cassandra-user-archive@cassandra.apache.org Received: (qmail 98187 invoked by uid 500); 13 May 2013 01:26:53 -0000 Mailing-List: contact user-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@cassandra.apache.org Delivered-To: mailing list user@cassandra.apache.org Received: (qmail 98175 invoked by uid 99); 13 May 2013 01:26:53 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 13 May 2013 01:26:53 +0000 X-ASF-Spam-Status: No, hits=1.5 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of edlinuxguru@gmail.com designates 74.125.82.173 as permitted sender) Received: from [74.125.82.173] (HELO mail-we0-f173.google.com) (74.125.82.173) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 13 May 2013 01:26:47 +0000 Received: by mail-we0-f173.google.com with SMTP id q54so5669140wes.32 for ; Sun, 12 May 2013 18:26:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:content-type; bh=Ri4bGOK9VOrd4AUPsXTf+qHnUACU5s24qH8O5gwoRyw=; b=dM9Fu6ISFwPJsN7Jlf6D8j7OYVo6psn40Nwx4H1kqbeubR2l2TC+x8fGdDUDfSuAkF xWrquwnsSSPJ+Je8wzyXEq8qS13Nbl7wGBiTvKMe6qKTSPQgqPuvFG3goz/+x36+60b6 cTI31x3fuIQUXXLChqX+u0HJYwqlfPtXjcDRUqhUKTtJBgaZhhBa/k/Bs5lFQyPkBjXd D64xEvBfsp7laTE6k9ceiSkcf1jJeXZV9AhrfKI0jvKleUNUhm3jZ3mpArHPGUL+lgZd yw9qdkuj+WvsNCqxuRlX+5K8bPNi+pafwYVZizXnDDS0XeKjZ6SvBlddNt5rvX7LIxU2 xwjQ== MIME-Version: 1.0 X-Received: by 10.194.95.9 with SMTP id dg9mr36448509wjb.45.1368408386960; Sun, 12 May 2013 18:26:26 -0700 (PDT) Received: by 10.194.20.164 with HTTP; Sun, 12 May 2013 18:26:26 -0700 (PDT) In-Reply-To: References: Date: Sun, 12 May 2013 21:26:26 -0400 Message-ID: Subject: Re: Limit on the size of a list From: Edward Capriolo To: "user@cassandra.apache.org" Content-Type: multipart/alternative; boundary=047d7bdc7c8ed004d404dc8f67cd X-Virus-Checked: Checked by ClamAV on apache.org --047d7bdc7c8ed004d404dc8f67cd Content-Type: text/plain; charset=ISO-8859-1 2 billion is the maximum theoretically limit of columns under a row. It is NOT the maximum limit of a CQL collection. The design of CQL collections currently require retrieving the entire collection on read. On Sun, May 12, 2013 at 11:13 AM, Robert Wille wrote: > I designed a data model for my data that uses a list of UUID's in a > column. When I designed my data model, my expectation was that most of the > lists would have fewer than a hundred elements, with a few having several > thousand. I discovered in my data a list that has nearly 400,000 items in > it. When I try to retrieve it, I get the following exception: > > java.lang.IllegalArgumentException: Illegal Capacity: -14594 > at java.util.ArrayList.(ArrayList.java:110) > at > org.apache.cassandra.cql.jdbc.ListMaker.compose(ListMaker.java:54) > at > org.apache.cassandra.cql.jdbc.TypedColumn.(TypedColumn.java:68) > at > org.apache.cassandra.cql.jdbc.CassandraResultSet.createColumn(CassandraResu > ltSet.java:1086) > at > org.apache.cassandra.cql.jdbc.CassandraResultSet.populateColumns(CassandraR > esultSet.java:161) > at > org.apache.cassandra.cql.jdbc.CassandraResultSet.(CassandraResultSet. > java:134) > at > org.apache.cassandra.cql.jdbc.CassandraStatement.doExecute(CassandraStateme > nt.java:166) > at > org.apache.cassandra.cql.jdbc.CassandraStatement.executeQuery(CassandraStat > ement.java:226) > > > I get this with Cassandra 1.2.4 and the latest snapshot of the JDBC > driver. Admittedly, several hundred thousand is quite a lot of items, but > odd that I'm getting some kind of wraparound, since 400,000 is a long ways > from 2 billion. > > What are the physical and practical limits on the size of a list? Is it > possible to retrieve a range of items from a list? > > Thanks in advance > > Robert > > > --047d7bdc7c8ed004d404dc8f67cd Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
2 billion is the maximum theoretically limit of columns un= der a row. It is NOT the maximum limit of a CQL collection. The design of C= QL collections currently require retrieving the entire collection on read.<= br>


On Sun,= May 12, 2013 at 11:13 AM, Robert Wille <rwille@footnote.com> wrote:
I designed a data model for my data that use= s a list of UUID's in a
column. When I designed my data model, my expectation was that most of the<= br> lists would have fewer than a hundred elements, with a few having several thousand. I discovered in my data a list that has nearly 400,000 items in it. When I try to retrieve it, I get the following exception:

java.lang.IllegalArgumentException: Illegal Capacity: -14594
=A0 =A0 =A0 =A0 at java.util.ArrayList.<init>(ArrayList.java:110)
=A0 =A0 =A0 =A0 at
org.apache.cassandra.cql.jdbc.ListMaker.compose(ListMaker.java:54)
=A0 =A0 =A0 =A0 at
org.apache.cassandra.cql.jdbc.TypedColumn.<init>(TypedColumn.java:68)=
=A0 =A0 =A0 =A0 at
org.apache.cassandra.cql.jdbc.CassandraResultSet.createColumn(CassandraResu=
ltSet.java:1086)
=A0 =A0 =A0 =A0 at
org.apache.cassandra.cql.jdbc.CassandraResultSet.populateColumns(CassandraR=
esultSet.java:161)
=A0 =A0 =A0 =A0 at
org.apache.cassandra.cql.jdbc.CassandraResultSet.<init>(CassandraResu= ltSet.
java:134)
=A0 =A0 =A0 =A0 at
org.apache.cassandra.cql.jdbc.CassandraStatement.doExecute(CassandraStateme=
nt.java:166)
=A0 =A0 =A0 =A0 at
org.apache.cassandra.cql.jdbc.CassandraStatement.executeQuery(CassandraStat=
ement.java:226)


I get this with Cassandra 1.2.4 and the latest snapshot of the JDBC
driver. Admittedly, several hundred thousand is quite a lot of items, but odd that I'm getting some kind of wraparound, since 400,000 is a long w= ays
from 2 billion.

What are the physical and practical limits on the size of a list? Is it
possible to retrieve a range of items from a list?

Thanks in advance

Robert



--047d7bdc7c8ed004d404dc8f67cd--