[ https://issues.apache.org/jira/browse/CASSANDRA-3068?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jonathan Ellis updated CASSANDRA-3068: -------------------------------------- Description: count() has been broken since it was introduced in CASSANDRA-1704. count() is part of the SQL standard and should operate on rows as defined there. Redefining it is gratuitously confusing to users ([1], [2]), and breaks compatibility with Hive. (I acknowledge my culpability in +1ing the idea in CASSANDRA-1704. I plead temporary insanity since I'd obviously come to my senses by [1].) Note that we do not need a replacement column-specific count function; the "transposed" queries from CASSANDRA-2 means you can count the columns in a row with (normal row-based) count(), against the transposed row. Additional note: count() is also odd in special-casing its return value in a CqlResult.num field. "normal" behavior that JDBC, DBAPI, etc. expect would be to return a CqlResult.rows with a single column named "count," and an int value of the result. Let's fix this at the same time as long as we're going to bite the incompatibility bullet. [1] http://cassandra-user-incubator-apache-org.3065146.n2.nabble.com/python-cql-driver-select-count-failed-td6410310.html [2] http://cassandra-user-incubator-apache-org.3065146.n2.nabble.com/CQL-COUNT-Not-Accurate-td6611854.html > Fix count() > ----------- > > Key: CASSANDRA-3068 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3068 > Project: Cassandra > Issue Type: Sub-task > Components: API, Core > Reporter: Jonathan Ellis > Fix For: 1.0 > > > count() has been broken since it was introduced in CASSANDRA-1704. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira