[
https://issues.apache.org/jira/browse/CASSANDRA-11927?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15392663#comment-15392663
]
Paulo Motta commented on CASSANDRA-11927:
-----------------------------------------
While I agree that this is not a bug and is working as intended, I still think
we should rethink this behavior on trunk and throw an RTE if CFS not found
during a mutation for the following reasons:
* In most other places we throw an exception if a table is not found during a
request
([SelectStatement|https://github.com/apache/cassandra/blob/087264f29c309ed0b2a18cc20b79016a05847f1c/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java#L724],
[thrift's
internal_insert|https://github.com/apache/cassandra/blob/fed476f9c049128674841d1c46b868979352b1a5/src/java/org/apache/cassandra/thrift/CassandraServer.java#L865],
or any caller of
[Keyspace.getColumnFamilyStore|https://github.com/apache/cassandra/blob/3c00a0674a4e8b71ae25439dc2a0dece2f460d21/src/java/org/apache/cassandra/db/Keyspace.java#L192]),
so I don't see why not being consistent and do it here.
* This would provide additional protection/assertion against bugs like
CASSANDRA-12083 and CASSANDRA-11027.
* While no one reported this as a problem, it could've been silently ignored,
since only a log message is print, while this will ensure that the request will
fail and the potential problem will be more easily noticed/reported.
bq. Second, the way this is implemented here means that any updates obtained
from the iterator before a missing cf is encountered, would be applied but the
RTE would still be thrown which is pretty confusing.
While this might be weird, it is exactly what happens if an error or unexpected
condition is found mid-update. What is unacceptable IMO is returning success
when not all updates were successfully applied, thus potentially breaking
consistency guarantees. So, unless there is another reason not to do it I don't
see why not improve this here.
> dtest failure in replication_test.ReplicationTest.simple_test
> -------------------------------------------------------------
>
> Key: CASSANDRA-11927
> URL: https://issues.apache.org/jira/browse/CASSANDRA-11927
> Project: Cassandra
> Issue Type: Bug
> Reporter: Sean McCarthy
> Assignee: Paulo Motta
> Labels: dtest
> Attachments: node1.log, node1_debug.log, node2.log, node2_debug.log,
> node3.log, node3_debug.log
>
>
> example failure:
> http://cassci.datastax.com/job/trunk_novnode_dtest/387/testReport/replication_test/ReplicationTest/simple_test
> Failed on CassCI build trunk_novnode_dtest #387
> Logs are attached.
> Unexpected error in question:
> {code}
> ERROR [SharedPool-Worker-1] 2016-05-30 16:00:17,211 Keyspace.java:504 -
> Attempting to mutate non-existant table 99f5be60-267f-11e6-ad5f-f13d771494ea
> (test.test)
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)