[
https://issues.apache.org/jira/browse/CASSANDRA-5336?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sylvain Lebresne resolved CASSANDRA-5336.
-----------------------------------------
Resolution: Not A Problem
bq. I think a simple select count(*) from <table> limit 10000; will do it
If we are talking of CQL3, this is a duplicate of CASSANDRA-3702 that will be
(but is not currently) solved by CASSANDRA-4415. Namely, 'select count' has to
count everything (because we have no better way to do it) and is not paged, so
it is going to OOM if asked to count too much.
bq. It translates into a series of get_range_slice calls which bring back all
of the rows, and for every row, it brings back every single column name.
Then it means that the Simba Driver should page those get_range_slice calls
that it generates to avoid the OOM. But that's a Simba Driver bug, not a
Cassandra one.
So to sum up, we are aware that for CQL3 the COUNT may OOM because it doesn't
page and we're going to fix it in CASSANDRA-4415. But on the thrift side,
paging should be done by the client (the simba driver in that instance) and
this is likely not going to change (as for "shouldn't that throw an exception
rather than OOMing?", CASSANDRA-3911 might be relevant).
> C* crashes with an OOM error when using the Simba Driver on a very wide table
> -----------------------------------------------------------------------------
>
> Key: CASSANDRA-5336
> URL: https://issues.apache.org/jira/browse/CASSANDRA-5336
> Project: Cassandra
> Issue Type: Bug
> Components: API
> Affects Versions: 1.1.6
> Environment: C* on a Mac with 1GB VM. Simba ODBC driver
> Reporter: Steven Lowenthal
> Attachments: nhanes600-10k.tarZ, thrift.in, thrift.out
>
>
> The Simba driver executes a version of a count(*) query:
> SELECT SUM(1) from nhanes3 having sum(1) > 0. It uses this format so ODBC
> returns a no rows found error if the table is empty. It translates into a
> series of get_range_slice calls which bring back all of the rows, and for
> every row, it brings back every single column name. C* crashes with an OOM
> in the thrift code. The table has almost 600 columns of mixed text and
> numeric data with many empty values.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira