{"record":{"id":"c8ee76e55c6fe567","repo":"apache/cassandra","slug":"ignoring-provided-values-s-as-they-are-not-suppor","errorCode":null,"errorMessage":"Ignoring provided values %s as they are not supported for %s (ignored values are: %s)","messagePattern":"Ignoring provided values (.+?) as they are not supported for (.+?) \\(ignored values are: (.+?)\\)","errorType":"console","errorClass":null,"httpStatus":null,"severity":"warning","filePath":"src/java/org/apache/cassandra/db/guardrails/Values.java","lineNumber":119,"sourceCode":"     *                     without an associated client come from asynchronous processes such as compaction, and we\n     *                     don't want to interrupt such processes.\n     */\n    public void guard(Set<T> values, Consumer<T> ignoreAction, @Nullable ClientState state)\n    {\n        if (!enabled(state))\n            return;\n\n        Set<T> disallowed = disallowedValues.apply(state);\n        Set<T> toDisallow = Sets.intersection(values, disallowed);\n        if (!toDisallow.isEmpty())\n            fail(format(\"Provided values %s are not allowed for %s (disallowed values are: %s)\",\n                        toDisallow.stream().sorted().collect(Collectors.toList()), what, disallowed), state);\n\n        Set<T> ignored = ignoredValues.apply(state);\n        Set<T> toIgnore = Sets.intersection(values, ignored);\n        if (!toIgnore.isEmpty())\n        {\n            warn(format(\"Ignoring provided values %s as they are not supported for %s (ignored values are: %s)\",\n                        toIgnore.stream().sorted().collect(Collectors.toList()), what, ignored));\n            toIgnore.forEach(ignoreAction);\n        }\n\n        Set<T> warned = warnedValues.apply(state);\n        Set<T> toWarn = Sets.intersection(values, warned);\n        if (!toWarn.isEmpty())\n            warn(format(\"Provided values %s are not recommended for %s (warned values are: %s)\",\n                        toWarn.stream().sorted().collect(Collectors.toList()), what, warned));\n    }\n}\n","sourceCodeStart":101,"sourceCodeEnd":131,"githubUrl":"https://github.com/apache/cassandra/blob/88fd0f6a0eaed8943f05ac9e8f947882b8ddc8f1/src/java/org/apache/cassandra/db/guardrails/Values.java#L101-L131","documentation":"Values.guard intersects the provided values with the guardrail's configured 'ignored' set. Any provided value that is configured as not-supported-for-<what> is warned about and then passed to the ignoreAction (skipped/rejected silently). The user is told which of their values were dropped and what the ignored set is.","triggerScenarios":"An operation (e.g. CREATE TABLE with unsupported compression options, altertable options) supplies values configured in the guardrail's ignored list; called from guard() itself and from test harnesses testValuesIgnored/testValuesDisallowed/testValuesUsers.","commonSituations":"Using table options, codecs, or feature settings deprecated/unsupported in the current version; copied DDL from older clusters referencing removed options.","solutions":["Remove the listed unsupported values from the statement/configuration.","Replace them with the supported alternative for the current Cassandra version.","If a value should be supported, adjust the guardrail's ignored configuration rather than the workload."],"exampleFix":"// before\nCREATE TABLE t (...) WITH compression = {'class': 'LZ4Compressor', 'unsupported_option': 1};\n// after\nCREATE TABLE t (...) WITH compression = {'class': 'LZ4Compressor'};","handlingStrategy":"validation","validationCode":"// Compare your option values against the guardrail's ignored set before issuing the statement\nSet<String> provided = parseOptions(ddl);\nSet<String> ignored = guardrailsConfig.ignoredValuesFor(what);\nif (!Collections.disjoint(provided, ignored)) {\n    logger.warn(\"Options will be ignored: {}\", Sets.intersection(provided, ignored));\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Keep DDL templates in sync with the Cassandra version's supported options.","Test schema migrations against a staging cluster with guardrails enabled.","Treat 'ignored values' warnings as schema drift signals."],"tags":["guardrails","unsupported-values","configuration"],"backgroundTag":"unsupported-config-value","analyzedSha":"88fd0f6a0eaed8943f05ac9e8f947882b8ddc8f1","analyzedAt":"2026-09-10T07:29:22.284Z","contentChangedAt":"2026-09-10T07:29:22.284Z","schemaVersion":2},"datasetVersion":"2026-09-17T15:17:12.973Z"}