Marcus Eriksson created CASSANDRA-15899:
-------------------------------------------

             Summary: Dropping a column can break queries until the schema is 
fully propagated
                 Key: CASSANDRA-15899
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-15899
             Project: Cassandra
          Issue Type: Bug
            Reporter: Marcus Eriksson
            Assignee: Marcus Eriksson


With a table like:
{code}
CREATE TABLE ks.tbl (id int primary key, v1 int, v2 int, v3 int)
{code}

and we drop {{v2}}, we get this exception on the replicas which haven't seen 
the schema change:
{code}
ERROR [SharedPool-Worker-1] node2 2020-06-24 09:49:08,107 
AbstractLocalAwareExecutorService.java:169 - Uncaught exception on thread 
Thread[SharedPool-Worker-1,5,node2]
java.lang.IllegalStateException: [ColumnDefinition{name=v1, 
type=org.apache.cassandra.db.marshal.Int32Type, kind=REGULAR, position=-1}, 
ColumnDefinition{name=v2, type=org.apache.cassandra.db.marshal.Int32Type, 
kind=REGULAR, position=-1}, ColumnDefinition{name=v3, 
type=org.apache.cassandra.db.marshal.Int32Type, kind=REGULAR, position=-1}] is 
not a subset of [v1 v3]
        at 
org.apache.cassandra.db.Columns$Serializer.encodeBitmap(Columns.java:546) 
~[main/:na]
        at 
org.apache.cassandra.db.Columns$Serializer.serializeSubset(Columns.java:478) 
~[main/:na]
        at 
org.apache.cassandra.db.rows.UnfilteredSerializer.serialize(UnfilteredSerializer.java:184)
 ~[main/:na]
        at 
org.apache.cassandra.db.rows.UnfilteredSerializer.serialize(UnfilteredSerializer.java:114)
 ~[main/:na]
        at 
org.apache.cassandra.db.rows.UnfilteredSerializer.serialize(UnfilteredSerializer.java:102)
 ~[main/:na]
        at 
org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer.serialize(UnfilteredRowIteratorSerializer.java:132)
 ~[main/:na]
        at 
org.apache.cassandra.db.rows.UnfilteredRowIteratorSerializer.serialize(UnfilteredRowIteratorSerializer.java:87)
 ~[main/:na]
...
{code}

Note that it doesn't matter if we {{SELECT *}} or {{SELECT id, v1}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to