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]

Reply via email to