{"record":{"id":"ddb88656b5297956","repo":"aeron-io/aeron","slug":"unsupported-congestion-control-cc-ccstr","errorCode":null,"errorMessage":"unsupported congestion control : cc=${ccStr}","messagePattern":"unsupported congestion control : cc=(.+?)","errorType":"exception","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"aeron-driver/src/main/java/io/aeron/driver/DefaultCongestionControlSupplier.java","lineNumber":89,"sourceCode":"                countersManager);\n        }\n        else if (CubicCongestionControl.CC_PARAM_VALUE.equals(ccStr))\n        {\n            return new CubicCongestionControl(\n                registrationId,\n                udpChannel,\n                streamId,\n                sessionId,\n                termLength,\n                senderMtuLength,\n                controlAddress,\n                sourceAddress,\n                nanoClock,\n                context,\n                countersManager);\n        }\n\n        throw new IllegalArgumentException(\"unsupported congestion control : cc=\" + ccStr);\n    }\n}\n","sourceCodeStart":71,"sourceCodeEnd":92,"githubUrl":"https://github.com/aeron-io/aeron/blob/6d60124e15e35c11b49ba2e3c2c2858a09a18803/aeron-driver/src/main/java/io/aeron/driver/DefaultCongestionControlSupplier.java#L71-L92","documentation":"DefaultCongestionControlSupplier.newInstance throws IllegalArgumentException when the requested congestion control strategy (cc parameter from the channel URI or configured class name) does not match any supported implementation.","triggerScenarios":"Setting context.congestionControlStrategy(...) or channel URI cc= parameter to a class name other than the supported CqrCongestionControl/StaticWindowCongestionControl implementations.","commonSituations":"Typo in the fully-qualified class name, using a congestion control from a different Aeron version or fork, or copy-pasting a cc= value that the default supplier does not know.","solutions":["Use one of the supported values: CongestionControl classes shipped with the driver (e.g. StaticWindowCongestionControl, CqrCongestionControl)","Provide a custom CongestionControlSupplier that recognizes your strategy instead of relying on the default","Check the exact fully-qualified class name including package"],"exampleFix":"// before\nctx.congestionControlStrategy(\"MyCc\"); // unsupported -> IllegalArgumentException\n// after\nctx.congestionControlStrategy(StaticWindowCongestionControl.class.getName());","handlingStrategy":"validation","validationCode":"Set<String> supported = Set.of(StaticWindowCongestionControl.class.getName(), CqrCongestionControl.class.getName()); if (!supported.contains(ccStr)) throw new IllegalArgumentException(\"unsupported cc=\" + ccStr);","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Only use fully-qualified names of CongestionControl classes shipped with your Aeron version","Re-check config after upgrading Aeron","Supply a custom supplier for experimental strategies"],"tags":["configuration","congestion-control","unsupported-value","aeron-driver"],"backgroundTag":"invalid-enum-value","analyzedSha":"6d60124e15e35c11b49ba2e3c2c2858a09a18803","analyzedAt":"2026-09-12T11:17:07.683Z","contentChangedAt":"2026-09-12T11:17:07.683Z","schemaVersion":2},"datasetVersion":"2026-09-19T12:17:13.211Z"}