Michael Semb Wever created CASSANDRA-21619:
----------------------------------------------
Summary: Name the keyspace and table when deserialization meets an
unknown column
Key: CASSANDRA-21619
URL: https://issues.apache.org/jira/browse/CASSANDRA-21619
Project: Apache Cassandra
Issue Type: Improvement
Components: Observability/Logging
Reporter: Michael Semb Wever
CASSANDRA-18346 added the keyspace and the table to the unknown column error in
{{ColumnSubselection}}:
{code}
Unknown column id in table cycling.route during deserialization
{code}
Three sibling sites still report the column name alone:
* {{Columns.Serializer.deserialize}}
* {{SerializationHeader.Component.toHeader}}
* {{RowFilter.Expression.Serializer.deserialize}}
{code:java}
throw new RuntimeException("Unknown column " +
UTF8Type.instance.getString(name) + " during deserialization");
{code}
A column name such as {{id}} is rarely unique across a schema, so an operator
who reads the message in a log cannot tell which table failed. The message
reaches the log during schema propagation, which is when it matters most.
The patch reports the keyspace and the table at all three sites, in the wording
CASSANDRA-18346 established. {{SchemaTest.selectExpectingError}} matched the
old message, so it now matches the new one.
Patch:
[mck/upstream/unknown-column-table-name/trunk|https://github.com/thelastpickle/cassandra/tree/mck/upstream/unknown-column-table-name/trunk]
Provenance:
[721f34c6a0|https://github.com/datastax/cassandra/commit/721f34c6a0072eed1efc05c1e460c445a01bea22]
by Brandon Williams. That commit changes {{Columns}} alone; this patch extends
the same change to the two remaining sites.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]