mirror of https://github.com/apache/cassandra
Fix 'Wrong class type' assertion error in CounterColumn
patch by slebresne; reviewed by jbellis for CASSANDRA-4976
This commit is contained in:
parent
e128ab0022
commit
d0292ef45a
|
|
@ -21,6 +21,7 @@
|
|||
* Fix duplicate SSTable reference when stream session failed (CASSANDRA-3306)
|
||||
* Allow static CF definition with compact storage (CASSANDRA-4910)
|
||||
* Fix endless loop/compaction of schema_* CFs due to broken timestamps (CASSANDRA-4880)
|
||||
* Fix 'wrong class type' assertion in CounterColumn (CASSANDRA-4976)
|
||||
|
||||
|
||||
1.1.6
|
||||
|
|
|
|||
|
|
@ -107,10 +107,18 @@ public class CounterColumn extends Column
|
|||
@Override
|
||||
public IColumn diff(IColumn column)
|
||||
{
|
||||
assert column instanceof CounterColumn : "Wrong class type.";
|
||||
assert (column instanceof CounterColumn) || (column instanceof DeletedColumn) : "Wrong class type: " + column.getClass();
|
||||
|
||||
if (timestamp() < column.timestamp())
|
||||
return column;
|
||||
|
||||
// Note that if at that point, column can't be a tombstone. Indeed,
|
||||
// column is the result of merging us with other nodes results, and
|
||||
// merging a CounterColumn with a tombstone never return a tombstone
|
||||
// unless that tombstone timestamp is greater that the CounterColumn
|
||||
// one.
|
||||
assert !(column instanceof DeletedColumn) : "Wrong class type: " + column.getClass();
|
||||
|
||||
if (timestampOfLastDelete() < ((CounterColumn)column).timestampOfLastDelete())
|
||||
return column;
|
||||
ContextRelationship rel = contextManager.diff(column.value(), value());
|
||||
|
|
@ -148,7 +156,7 @@ public class CounterColumn extends Column
|
|||
@Override
|
||||
public IColumn reconcile(IColumn column, Allocator allocator)
|
||||
{
|
||||
assert (column instanceof CounterColumn) || (column instanceof DeletedColumn) : "Wrong class type.";
|
||||
assert (column instanceof CounterColumn) || (column instanceof DeletedColumn) : "Wrong class type: " + column.getClass();
|
||||
|
||||
if (column.isMarkedForDelete()) // live + tombstone: track last tombstone
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue