[jira] [Updated] (CASSANDRA-14439) ClassCastException with mixed 1.2.18 + 2.0.17 environment
[ https://issues.apache.org/jira/browse/CASSANDRA-14439?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] mck updated CASSANDRA-14439: Resolution: Won't Fix Status: Resolved (was: Open) > ClassCastException with mixed 1.2.18 + 2.0.17 environment > -- > > Key: CASSANDRA-14439 > URL: https://issues.apache.org/jira/browse/CASSANDRA-14439 > Project: Cassandra > Issue Type: Bug > Components: Legacy/Core > Environment: Mixed 1.2.18 + 2.0.17 environment, used temporarily > during incremental migration process. >Reporter: Dariusz Cieslak >Assignee: Dariusz Cieslak >Priority: Low > Labels: easyfix > Attachments: cassandra-class-cast-exception-fix.patch > > > During mixed versions tests I've discovered that mixed 1.2.18 + 2.0.17 > environment gives the following exception on 2.0.17 node: > {code} > java.lang.ClassCastException: org.apache.cassandra.db.SliceByNamesReadCommand > cannot be cast to org.apache.cassandra.db.SliceFromReadCommand > at > org.apache.cassandra.db.SliceFromReadCommandSerializer.serializedSize(SliceFromReadCommand.java:242) > at > org.apache.cassandra.db.ReadCommandSerializer.serializedSize(ReadCommand.java:204) > at > org.apache.cassandra.db.ReadCommandSerializer.serializedSize(ReadCommand.java:134) > at org.apache.cassandra.net.MessageOut.serialize(MessageOut.java:116) > at > org.apache.cassandra.net.OutboundTcpConnection.writeInternal(OutboundTcpConnection.java:251) > at > org.apache.cassandra.net.OutboundTcpConnection.writeConnected(OutboundTcpConnection.java:203) > at > org.apache.cassandra.net.OutboundTcpConnection.run(OutboundTcpConnection.java:151) > {code} > The exception is caused by inconsistent commandType handling in > ReadCommandSerializer(), > {code} > out.writeByte(newCommand.commandType.serializedValue); > switch (command.commandType) /// <--- WHY NOT > newCommand.commandType -- DCI ??? > { > case GET_BY_NAMES: > SliceByNamesReadCommand.serializer.serialize(newCommand, > superColumn, out, version); > break; > case GET_SLICES: > SliceFromReadCommand.serializer.serialize(newCommand, > superColumn, out, version); > break; > default: > throw new AssertionError(); > } > {code} > Proposed fix (also attached as a patch): > {code} > diff --git a/src/java/org/apache/cassandra/db/ReadCommand.java > b/src/java/org/apache/cassandra/db/ReadCommand.java > index cadcd7d..f2153e8 100644 > --- a/src/java/org/apache/cassandra/db/ReadCommand.java > +++ b/src/java/org/apache/cassandra/db/ReadCommand.java > @@ -153,7 +153,7 @@ class ReadCommandSerializer implements > IVersionedSerializer > } > > out.writeByte(newCommand.commandType.serializedValue); > -switch (command.commandType) > +switch (newCommand.commandType) > { > case GET_BY_NAMES: > SliceByNamesReadCommand.serializer.serialize(newCommand, > superColumn, out, version); > @@ -196,7 +196,7 @@ class ReadCommandSerializer implements > IVersionedSerializer > } > } > > -switch (command.commandType) > +switch (newCommand.commandType) > { > case GET_BY_NAMES: > return 1 + > SliceByNamesReadCommand.serializer.serializedSize(newCommand, superColumn, > version); > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-14439) ClassCastException with mixed 1.2.18 + 2.0.17 environment
[ https://issues.apache.org/jira/browse/CASSANDRA-14439?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] mck updated CASSANDRA-14439: Status: Patch Available (was: Review In Progress) > ClassCastException with mixed 1.2.18 + 2.0.17 environment > -- > > Key: CASSANDRA-14439 > URL: https://issues.apache.org/jira/browse/CASSANDRA-14439 > Project: Cassandra > Issue Type: Bug > Components: Legacy/Core > Environment: Mixed 1.2.18 + 2.0.17 environment, used temporarily > during incremental migration process. >Reporter: Dariusz Cieslak >Assignee: Dariusz Cieslak >Priority: Low > Labels: easyfix > Attachments: cassandra-class-cast-exception-fix.patch > > > During mixed versions tests I've discovered that mixed 1.2.18 + 2.0.17 > environment gives the following exception on 2.0.17 node: > {code} > java.lang.ClassCastException: org.apache.cassandra.db.SliceByNamesReadCommand > cannot be cast to org.apache.cassandra.db.SliceFromReadCommand > at > org.apache.cassandra.db.SliceFromReadCommandSerializer.serializedSize(SliceFromReadCommand.java:242) > at > org.apache.cassandra.db.ReadCommandSerializer.serializedSize(ReadCommand.java:204) > at > org.apache.cassandra.db.ReadCommandSerializer.serializedSize(ReadCommand.java:134) > at org.apache.cassandra.net.MessageOut.serialize(MessageOut.java:116) > at > org.apache.cassandra.net.OutboundTcpConnection.writeInternal(OutboundTcpConnection.java:251) > at > org.apache.cassandra.net.OutboundTcpConnection.writeConnected(OutboundTcpConnection.java:203) > at > org.apache.cassandra.net.OutboundTcpConnection.run(OutboundTcpConnection.java:151) > {code} > The exception is caused by inconsistent commandType handling in > ReadCommandSerializer(), > {code} > out.writeByte(newCommand.commandType.serializedValue); > switch (command.commandType) /// <--- WHY NOT > newCommand.commandType -- DCI ??? > { > case GET_BY_NAMES: > SliceByNamesReadCommand.serializer.serialize(newCommand, > superColumn, out, version); > break; > case GET_SLICES: > SliceFromReadCommand.serializer.serialize(newCommand, > superColumn, out, version); > break; > default: > throw new AssertionError(); > } > {code} > Proposed fix (also attached as a patch): > {code} > diff --git a/src/java/org/apache/cassandra/db/ReadCommand.java > b/src/java/org/apache/cassandra/db/ReadCommand.java > index cadcd7d..f2153e8 100644 > --- a/src/java/org/apache/cassandra/db/ReadCommand.java > +++ b/src/java/org/apache/cassandra/db/ReadCommand.java > @@ -153,7 +153,7 @@ class ReadCommandSerializer implements > IVersionedSerializer > } > > out.writeByte(newCommand.commandType.serializedValue); > -switch (command.commandType) > +switch (newCommand.commandType) > { > case GET_BY_NAMES: > SliceByNamesReadCommand.serializer.serialize(newCommand, > superColumn, out, version); > @@ -196,7 +196,7 @@ class ReadCommandSerializer implements > IVersionedSerializer > } > } > > -switch (command.commandType) > +switch (newCommand.commandType) > { > case GET_BY_NAMES: > return 1 + > SliceByNamesReadCommand.serializer.serializedSize(newCommand, superColumn, > version); > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-14439) ClassCastException with mixed 1.2.18 + 2.0.17 environment
[ https://issues.apache.org/jira/browse/CASSANDRA-14439?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] mck updated CASSANDRA-14439: Status: Open (was: Patch Available) > ClassCastException with mixed 1.2.18 + 2.0.17 environment > -- > > Key: CASSANDRA-14439 > URL: https://issues.apache.org/jira/browse/CASSANDRA-14439 > Project: Cassandra > Issue Type: Bug > Components: Legacy/Core > Environment: Mixed 1.2.18 + 2.0.17 environment, used temporarily > during incremental migration process. >Reporter: Dariusz Cieslak >Assignee: Dariusz Cieslak >Priority: Low > Labels: easyfix > Attachments: cassandra-class-cast-exception-fix.patch > > > During mixed versions tests I've discovered that mixed 1.2.18 + 2.0.17 > environment gives the following exception on 2.0.17 node: > {code} > java.lang.ClassCastException: org.apache.cassandra.db.SliceByNamesReadCommand > cannot be cast to org.apache.cassandra.db.SliceFromReadCommand > at > org.apache.cassandra.db.SliceFromReadCommandSerializer.serializedSize(SliceFromReadCommand.java:242) > at > org.apache.cassandra.db.ReadCommandSerializer.serializedSize(ReadCommand.java:204) > at > org.apache.cassandra.db.ReadCommandSerializer.serializedSize(ReadCommand.java:134) > at org.apache.cassandra.net.MessageOut.serialize(MessageOut.java:116) > at > org.apache.cassandra.net.OutboundTcpConnection.writeInternal(OutboundTcpConnection.java:251) > at > org.apache.cassandra.net.OutboundTcpConnection.writeConnected(OutboundTcpConnection.java:203) > at > org.apache.cassandra.net.OutboundTcpConnection.run(OutboundTcpConnection.java:151) > {code} > The exception is caused by inconsistent commandType handling in > ReadCommandSerializer(), > {code} > out.writeByte(newCommand.commandType.serializedValue); > switch (command.commandType) /// <--- WHY NOT > newCommand.commandType -- DCI ??? > { > case GET_BY_NAMES: > SliceByNamesReadCommand.serializer.serialize(newCommand, > superColumn, out, version); > break; > case GET_SLICES: > SliceFromReadCommand.serializer.serialize(newCommand, > superColumn, out, version); > break; > default: > throw new AssertionError(); > } > {code} > Proposed fix (also attached as a patch): > {code} > diff --git a/src/java/org/apache/cassandra/db/ReadCommand.java > b/src/java/org/apache/cassandra/db/ReadCommand.java > index cadcd7d..f2153e8 100644 > --- a/src/java/org/apache/cassandra/db/ReadCommand.java > +++ b/src/java/org/apache/cassandra/db/ReadCommand.java > @@ -153,7 +153,7 @@ class ReadCommandSerializer implements > IVersionedSerializer > } > > out.writeByte(newCommand.commandType.serializedValue); > -switch (command.commandType) > +switch (newCommand.commandType) > { > case GET_BY_NAMES: > SliceByNamesReadCommand.serializer.serialize(newCommand, > superColumn, out, version); > @@ -196,7 +196,7 @@ class ReadCommandSerializer implements > IVersionedSerializer > } > } > > -switch (command.commandType) > +switch (newCommand.commandType) > { > case GET_BY_NAMES: > return 1 + > SliceByNamesReadCommand.serializer.serializedSize(newCommand, superColumn, > version); > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-14439) ClassCastException with mixed 1.2.18 + 2.0.17 environment
[ https://issues.apache.org/jira/browse/CASSANDRA-14439?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] mck updated CASSANDRA-14439: Reviewers: mck Status: Review In Progress (was: Patch Available) > ClassCastException with mixed 1.2.18 + 2.0.17 environment > -- > > Key: CASSANDRA-14439 > URL: https://issues.apache.org/jira/browse/CASSANDRA-14439 > Project: Cassandra > Issue Type: Bug > Components: Legacy/Core > Environment: Mixed 1.2.18 + 2.0.17 environment, used temporarily > during incremental migration process. >Reporter: Dariusz Cieslak >Assignee: Dariusz Cieslak >Priority: Low > Labels: easyfix > Attachments: cassandra-class-cast-exception-fix.patch > > > During mixed versions tests I've discovered that mixed 1.2.18 + 2.0.17 > environment gives the following exception on 2.0.17 node: > {code} > java.lang.ClassCastException: org.apache.cassandra.db.SliceByNamesReadCommand > cannot be cast to org.apache.cassandra.db.SliceFromReadCommand > at > org.apache.cassandra.db.SliceFromReadCommandSerializer.serializedSize(SliceFromReadCommand.java:242) > at > org.apache.cassandra.db.ReadCommandSerializer.serializedSize(ReadCommand.java:204) > at > org.apache.cassandra.db.ReadCommandSerializer.serializedSize(ReadCommand.java:134) > at org.apache.cassandra.net.MessageOut.serialize(MessageOut.java:116) > at > org.apache.cassandra.net.OutboundTcpConnection.writeInternal(OutboundTcpConnection.java:251) > at > org.apache.cassandra.net.OutboundTcpConnection.writeConnected(OutboundTcpConnection.java:203) > at > org.apache.cassandra.net.OutboundTcpConnection.run(OutboundTcpConnection.java:151) > {code} > The exception is caused by inconsistent commandType handling in > ReadCommandSerializer(), > {code} > out.writeByte(newCommand.commandType.serializedValue); > switch (command.commandType) /// <--- WHY NOT > newCommand.commandType -- DCI ??? > { > case GET_BY_NAMES: > SliceByNamesReadCommand.serializer.serialize(newCommand, > superColumn, out, version); > break; > case GET_SLICES: > SliceFromReadCommand.serializer.serialize(newCommand, > superColumn, out, version); > break; > default: > throw new AssertionError(); > } > {code} > Proposed fix (also attached as a patch): > {code} > diff --git a/src/java/org/apache/cassandra/db/ReadCommand.java > b/src/java/org/apache/cassandra/db/ReadCommand.java > index cadcd7d..f2153e8 100644 > --- a/src/java/org/apache/cassandra/db/ReadCommand.java > +++ b/src/java/org/apache/cassandra/db/ReadCommand.java > @@ -153,7 +153,7 @@ class ReadCommandSerializer implements > IVersionedSerializer > } > > out.writeByte(newCommand.commandType.serializedValue); > -switch (command.commandType) > +switch (newCommand.commandType) > { > case GET_BY_NAMES: > SliceByNamesReadCommand.serializer.serialize(newCommand, > superColumn, out, version); > @@ -196,7 +196,7 @@ class ReadCommandSerializer implements > IVersionedSerializer > } > } > > -switch (command.commandType) > +switch (newCommand.commandType) > { > case GET_BY_NAMES: > return 1 + > SliceByNamesReadCommand.serializer.serializedSize(newCommand, superColumn, > version); > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Updated] (CASSANDRA-14439) ClassCastException with mixed 1.2.18 + 2.0.17 environment
[ https://issues.apache.org/jira/browse/CASSANDRA-14439?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Kurt Greaves updated CASSANDRA-14439: - Assignee: Dariusz Cieslak Status: Patch Available (was: Open) > ClassCastException with mixed 1.2.18 + 2.0.17 environment > -- > > Key: CASSANDRA-14439 > URL: https://issues.apache.org/jira/browse/CASSANDRA-14439 > Project: Cassandra > Issue Type: Bug > Components: Core > Environment: Mixed 1.2.18 + 2.0.17 environment, used temporarily > during incremental migration process. >Reporter: Dariusz Cieslak >Assignee: Dariusz Cieslak >Priority: Minor > Labels: easyfix > Attachments: cassandra-class-cast-exception-fix.patch > > > During mixed versions tests I've discovered that mixed 1.2.18 + 2.0.17 > environment gives the following exception on 2.0.17 node: > {code} > java.lang.ClassCastException: org.apache.cassandra.db.SliceByNamesReadCommand > cannot be cast to org.apache.cassandra.db.SliceFromReadCommand > at > org.apache.cassandra.db.SliceFromReadCommandSerializer.serializedSize(SliceFromReadCommand.java:242) > at > org.apache.cassandra.db.ReadCommandSerializer.serializedSize(ReadCommand.java:204) > at > org.apache.cassandra.db.ReadCommandSerializer.serializedSize(ReadCommand.java:134) > at org.apache.cassandra.net.MessageOut.serialize(MessageOut.java:116) > at > org.apache.cassandra.net.OutboundTcpConnection.writeInternal(OutboundTcpConnection.java:251) > at > org.apache.cassandra.net.OutboundTcpConnection.writeConnected(OutboundTcpConnection.java:203) > at > org.apache.cassandra.net.OutboundTcpConnection.run(OutboundTcpConnection.java:151) > {code} > The exception is caused by inconsistent commandType handling in > ReadCommandSerializer(), > {code} > out.writeByte(newCommand.commandType.serializedValue); > switch (command.commandType) /// <--- WHY NOT > newCommand.commandType -- DCI ??? > { > case GET_BY_NAMES: > SliceByNamesReadCommand.serializer.serialize(newCommand, > superColumn, out, version); > break; > case GET_SLICES: > SliceFromReadCommand.serializer.serialize(newCommand, > superColumn, out, version); > break; > default: > throw new AssertionError(); > } > {code} > Proposed fix (also attached as a patch): > {code} > diff --git a/src/java/org/apache/cassandra/db/ReadCommand.java > b/src/java/org/apache/cassandra/db/ReadCommand.java > index cadcd7d..f2153e8 100644 > --- a/src/java/org/apache/cassandra/db/ReadCommand.java > +++ b/src/java/org/apache/cassandra/db/ReadCommand.java > @@ -153,7 +153,7 @@ class ReadCommandSerializer implements > IVersionedSerializer > } > > out.writeByte(newCommand.commandType.serializedValue); > -switch (command.commandType) > +switch (newCommand.commandType) > { > case GET_BY_NAMES: > SliceByNamesReadCommand.serializer.serialize(newCommand, > superColumn, out, version); > @@ -196,7 +196,7 @@ class ReadCommandSerializer implements > IVersionedSerializer > } > } > > -switch (command.commandType) > +switch (newCommand.commandType) > { > case GET_BY_NAMES: > return 1 + > SliceByNamesReadCommand.serializer.serializedSize(newCommand, superColumn, > version); > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org