CORE-15424 schemaregistry: default enable schema_registry_enable_qualified_subjects#30365
Merged
pgellert merged 2 commits intoredpanda-data:devfrom May 11, 2026
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Enables Schema Registry context support by default by flipping schema_registry_enable_qualified_subjects to true and making it user-visible, so qualified subjects like :.context:subject are parsed without an opt-in cluster config change.
Changes:
- Change the default for
schema_registry_enable_qualified_subjectstotrueand promote visibility touser. - Remove
config::startup_configusage/implementation for SR qualified-subject parsing and rely onneeds_restartconfig semantics instead. - Update Python and C++ tests/build targets to reflect the new default and the removal of the startup-captured flag.
Reviewed changes
Copilot reviewed 19 out of 19 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| tests/rptest/tests/schema_registry_test.py | Updates the “flag off” test to explicitly disable the setting now that default is enabled. |
| tests/rptest/tests/metrics_reporter_test.py | Drops redundant extra_rp_conf enabling the setting (now default). |
| tests/rptest/tests/audit_log_test.py | Removes redundant cluster-config enabling (now default). |
| src/v/security/tests/authorizer_test.cc | Removes per-test local enabling of qualified parsing (now default). |
| src/v/pandaproxy/schema_registry/types.h | Removes enable_qualified_subjects startup-captured flag type. |
| src/v/pandaproxy/schema_registry/types.cc | Reads schema_registry_enable_qualified_subjects directly from shard_local_cfg() during parsing. |
| src/v/pandaproxy/schema_registry/test/store_fixture.cc | Removes per-fixture enable/reset of qualified parsing (now default). |
| src/v/pandaproxy/schema_registry/test/storage.cc | Removes fixture SetUp/TearDown that toggled the old startup flag. |
| src/v/pandaproxy/schema_registry/test/context_subject.cc | Updates tests to toggle the config property instead of the removed startup flag. |
| src/v/pandaproxy/schema_registry/test/consume_to_store.cc | Removes per-test enabling/reset of qualified parsing (now default). |
| src/v/pandaproxy/schema_registry/test/BUILD | Adds //src/v/config dep for tests that now manipulate config directly. |
| src/v/pandaproxy/schema_registry/requests/test/post_subject_versions.cc | Removes per-test enabling/reset of qualified parsing (now default). |
| src/v/pandaproxy/schema_registry/api.cc | Removes startup init/reset of the removed startup-captured flag; logs current config value. |
| src/v/pandaproxy/schema_registry/BUILD | Removes startup_config deps; adds //src/v/config where needed. |
| src/v/config/tests/startup_config_test.cc | Removes tests for startup_config (feature removed). |
| src/v/config/tests/BUILD | Removes the startup_config_test target. |
| src/v/config/startup_config.h | Removes the startup_config implementation. |
| src/v/config/configuration.cc | Flips default to true and sets visibility to user for the SR qualified-subject config. |
| src/v/config/BUILD | Removes the startup_config library target. |
Promote the property to user visibility and flip the default to true. Qualified subject syntax (:.context:subject) is now parsed by default; clusters with literal-subject data can still opt out by setting the flag to false.
The startup_config<bool> wrapper was emulating "the value is fixed for the lifetime of the service" semantics for a config flag that requires restart. Since ae61cc7, needs_restart properties already provide that guarantee at the property layer, so we can avoid this complexity and deprecate startup_config.
a9eacb6 to
6898146
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
For the 26.2 release, enable schema-registry context support by default by flipping schema_registry_enable_qualified_subjects from false to true and promoting the property to user visibility. Qualified subject syntax (e.g. :.context:subject) is now parsed out-of-the-box rather than requiring an opt-in cluster config change.
It also cleans up the startup_config-based locking of the value of the
schema_registry_enable_qualified_subjectsproperty, since theae61cc7already provides the desired behaviour for needs_restart properties.Fixes https://redpandadata.atlassian.net/browse/CORE-15424
Backports Required
Release Notes
Features