Details
-
Improvement
-
Status: Resolved
-
Low
-
Resolution: Fixed
-
None
Description
The error message for too many element in a collection does not give keyspace or column family information. This makes it a pain point to try to determine which table is the offending table.
Example Error message:
ERROR [Native-Transport-Requests:809453] 2015-04-23 22:48:21,189 CollectionType.java (line 116) Detected collection with 136234 elements, more than the 65535 limit. Only the first 65535 elements will be returned to the client. Please see http://cassandra.apache.org/doc/cql3/CQL.html#collections for more details.
Currently, to try to pinpoint the table in question. We need to trace all requests and then try to match up the timestamps in the CQL tracing session with the log timestamps to try and match. If prepared statements are used, this is a dead end due to the logged tracing information missing the query. In which case, we have to look at other 3rd party methods for capturing the queries to try and match up. This is extremely tedious when many tables have collections and a high number of ops against them.
Requesting that the error contain the keyspace.table name in the error message.