Arvind Kandpal created CASSANDRA-21792:
------------------------------------------
Summary: nodetool consensus_admin begin-migration and
finish-migration fail with NotSerializableException when table names are given
Key: CASSANDRA-21792
URL: https://issues.apache.org/jira/browse/CASSANDRA-21792
Project: Apache Cassandra
Issue Type: Bug
Reporter: Arvind Kandpal
Assignee: Arvind Kandpal
nodetool consensus_admin begin-migration and finish-migration fail when a table
name is passed:
$ nodetool consensus_admin begin-migration ks1 table1
error: java.util.ArrayList$SubList
– StackTrace –
java.io.NotSerializableException: java.util.ArrayList$SubList
Cause: ConsensusMigrationAdmin passes schemaArgs.subList(...) directly to the
JMX calls migrateConsensusProtocol and finishConsensusMigration.
ArrayList$SubList is not serializable,
so the call fails before it reaches the node. consensus_admin list is not
affected because it copies the list first. In-JVM dtests do not catch this
because they call the MBean
directly, without JMX serialization.
Steps to reproduce:
1. Start a cluster with paxos_variant: v2.
2. Create a table and set transactional_mode='full'.
3. Run nodetool consensus_admin begin-migration <keyspace> <table>.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]