apache/cassandra · error · ConfigurationException

Invalid yaml. Please remove properties <missingProperties> f

Error message

Invalid yaml. Please remove properties <missingProperties> from your cassandra.yaml

What it means

PropertiesChecker.check() throws this when missingProperties is non-empty: these are yaml properties that no longer exist in the current Config schema (removed or renamed in this Cassandra version) and must be deleted from cassandra.yaml. It is distinct from nullProperties (352): these keys are recognized as once-valid but now absent from the schema.

Source

Thrown at src/java/org/apache/cassandra/config/YamlConfigurationLoader.java:560

                Property prop = getFlatProperty(type, s);
                if (prop instanceof MissingProperty)
                {
                    root = null;
                    break;
                }
                root = root == null ? prop : Properties.andThen(root, prop);
                type = root.getType();
            }
            return root != null ? root : new MissingProperty(name);
        }

        public void check() throws ConfigurationException
        {
            if (!nullProperties.isEmpty())
                throw new ConfigurationException("Invalid yaml. Those properties " + nullProperties + " are not valid", false);

            if (!missingProperties.isEmpty())
                throw new ConfigurationException("Invalid yaml. Please remove properties " + missingProperties + " from your cassandra.yaml", false);

            if (!deprecationWarnings.isEmpty())
                logger.warn("{} parameters have been deprecated. They have new names and/or value format; For more information, please refer to NEWS.txt", deprecationWarnings);
        }
    }

    public static LoaderOptions getDefaultLoaderOptions()
    {
        LoaderOptions loaderOptions = new LoaderOptions();
        loaderOptions.setCodePointLimit(64 * 1024 * 1024); // 64 MiB
        loaderOptions.setWarnOnDuplicateKeys(false);
        return loaderOptions;
    }
}

View on GitHub (pinned to 88fd0f6a0e)

Solutions

  1. Remove the listed properties from cassandra.yaml as the message instructs
  2. Consult NEWS.txt / the Replacement annotations for the new names of the removed keys and substitute them
  3. Re-baseline your cassandra.yaml against the shipped conf/cassandra.yaml of the target version
  4. Migrate removed per-key settings to their new locations (e.g. table-level options moved to schema maps)

Example fix

// before (cassandra.yaml, upgraded from 4.0)
memtable_allocation_type: heap_buffers
index_summary_resize_interval_in_minutes: 60
// after
memtable_allocation_type: heap_buffers
Defensive patterns

Strategy: validation

Validate before calling

// before upgrade, scan for removed keys
List<String> removed = List.of("index_summary_resize_interval_in_minutes");
String yaml = java.nio.file.Files.readString(Path.of("cassandra.yaml"));
removed.stream().filter(yaml::contains)
    .forEach(k -> System.err.println("Deprecated key to remove/migrate: " + k));

Try / catch

try {
    config = loader.loadConfig(url);
} catch (ConfigurationException e) {
    if (e.getMessage().contains("Please remove properties"))
        log.error("Removed yaml keys must be migrated: " + e.getMessage());
    throw e;
}

Prevention

When it happens

Trigger: Loading a cassandra.yaml carried forward from an older Cassandra release that still contains deprecated/removed keys, triggering loadConfig's PropertiesChecker; also any config map supplied to the loader containing removed properties.

Common situations: In-place upgrade 4.0 -> 4.1/5.0 where many settings were renamed or moved into maps; copying cassandra.yaml from an old AMI/pod image; keeping cluster-wide settings that moved to cassandra-topology.properties or new nested structures.

Understand the failure class

Background: Schema validation failed / invalid input schema: payload rejected because its shape doesn't match the expected schema — this error's family across 28 libraries.

Related errors


AI-assisted analysis of apache/cassandra@88fd0f6a0e (2026-09-10). Data as JSON: /api/errors/54da7b4aa8cc78dd. Report an issue: GitHub.