{"record":{"id":"84d15b9bbdcfcc81","repo":"apache/cassandra","slug":"no-transformation-sequence-is-in-progress-for-no","errorCode":null,"errorMessage":"No transformation sequence is in progress for ${nodeIpOrId}.","messagePattern":"No transformation sequence is in progress for (.+?)\\.","errorType":"exception","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"src/java/org/apache/cassandra/tools/CMSOfflineTool.java","lineNumber":258,"sourceCode":"        String outputFilePath;\n\n        protected abstract EnumSet<MultiStepOperation.Kind> supportedKinds();\n\n        protected ClusterMetadata postCancel(ClusterMetadata metadata, NodeId nodeId)\n        {\n            return metadata;\n        }\n\n        @Override\n        protected void execute(Output output) throws IOException\n        {\n            ClusterMetadata metadata = parseClusterMetadata();\n            NodeId nodeId = nodeIdentifierOption.getNodeId(metadata);\n\n            MultiStepOperation<?> multiStepOperation = metadata.inProgressSequences.get(nodeId);\n            if (multiStepOperation == null)\n            {\n                throw new IllegalArgumentException(\"No transformation sequence is in progress for \" +\n                                                   nodeIdentifierOption.getNodeIpOrId() + '.');\n            }\n\n            if (!supportedKinds().contains(multiStepOperation.kind()))\n            {\n                throw new IllegalArgumentException(\"Sequence of kind \" + multiStepOperation.kind() +\n                                                   \" is in progress for node \" + nodeIdentifierOption.getNodeIpOrId() +\n                                                   \". Cannot proceed with this operation.\");\n            }\n\n            CancelInProgressSequence cancelSequence = new CancelInProgressSequence(nodeId);\n            ClusterMetadata updatedMetadata = cancelSequence.execute(metadata).success().metadata;\n            updatedMetadata = postCancel(updatedMetadata, nodeId);\n            writeMetadata(output, updatedMetadata, outputFilePath);\n        }\n    }\n\n    /**","sourceCodeStart":240,"sourceCodeEnd":276,"githubUrl":"https://github.com/apache/cassandra/blob/88fd0f6a0eaed8943f05ac9e8f947882b8ddc8f1/src/java/org/apache/cassandra/tools/CMSOfflineTool.java#L240-L276","documentation":"Thrown by CMSOfflineTool.execute() when the requested node has no in-progress multi-step operation (bootstrap/replace/decommission etc.) in the metadata dump. The offline 'abort/cancel transformation sequence' operation needs an active sequence to act on.","triggerScenarios":"Running an offline sequence-abort command (e.g. cms offline abort-sequence) for a node whose metadata.inProgressSequences.get(nodeId) is null — the node has no running transformation sequence.","commonSituations":"Aborting a bootstrap that already completed or was never started; using the wrong node id/IP; sequence already aborted in a previous run.","solutions":["Confirm the node actually has an in-progress sequence (inspect the dump / cms show)","Verify the node identifier (IP or id) refers to the intended node","No action needed if the sequence already finished — the operation is a no-op case"],"exampleFix":"# before\ncms offline abort-sequence --id 10.0.0.5  # no sequence in progress\n# after: check first, then target the right node\ncms offline show-sequence --id 10.0.0.6  # node that actually has an in-progress bootstrap","handlingStrategy":"validation","validationCode":"NodeId nodeId = nodeIdentifierOption.getNodeId(metadata);\nif (!metadata.inProgressSequences.containsKey(nodeId)) { /* nothing to abort; skip or correct the id */ }","typeGuard":null,"tryCatchPattern":"try { tool.execute(); } catch (IllegalArgumentException e) { if (e.getMessage().startsWith(\"No transformation sequence is in progress\")) { /* verify node id / no-op case */ } else throw e; }","preventionTips":["List in-progress sequences in the dump before running abort operations","Double-check the node id/IP argument against the dump contents","Treat this error as informational when the sequence already completed"],"tags":["cli","cluster-metadata","no-active-operation"],"backgroundTag":"resource-not-found","analyzedSha":"88fd0f6a0eaed8943f05ac9e8f947882b8ddc8f1","analyzedAt":"2026-09-10T07:29:22.284Z","contentChangedAt":"2026-09-10T07:29:22.284Z","schemaVersion":2},"datasetVersion":"2026-09-14T16:17:12.679Z"}