Repository navigation
Document consume_schema_strategy default per release line (incl. 3.4, proton-enterprise#12508) - #702
Merged
kuiliu88 merged 3 commits intoOct 29, 2026
Conversation
…ton-enterprise#12508)
….3.x / 3.4.x) in one table
…sages, earlier schema versions)
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.
What
Companion to #701 (open); stacked on #701's branch so the diff is only this delta. Retarget to
mainafter #701 merges.The docs repo is single-branch (
main), but the product ships from several lines (2.8.x, 3.2.x, 3.3.x, 3.4.x, 3.5 ondevelop). Theconsume_schema_strategydefault differs per line, so the reference page now states it per release line in one table instead of scoping prose to one line. Triggered by timeplus-io/proton-enterprise#12508 ("Port/kafka fixes to 3.4", merged to3.42026-10-29), which gives3.4the same implicit-default resolver as3.3.Changes
docs/shared/kafka-external-stream.md{#consume_schema_strategy_versions}) replacing the 3.3.x-only "Default value" paragraph: per-releaseconsume_schema_strategyavailability, default when not set, andschema_message_nameavailability.schema_message_nameavailability now points at that table.count()note: 3.4.1 returns the raw Kafka message count.single->all, escape hatchconsume_schema_strategy='single').docs/shared/kafka-external-stream.md(commit 9c61597): documents two 3.4.1single-mode gaps, both live-verified on 3.4.1 and 3.4.2-rc.1 and fixed on 3.3.4 / 3.4.2-rc.2 / 3.5.1-rc.0: a Protobuf sibling message in the same schema ID is not skipped, and (Avro, evolved subject) frames written with an earlier subject version are dropped. Added to theschema_message_namebullet, below the availability table, and to the 3.4.1 -> 3.4.2+ upgrade bullet.docs/kafka-schema-registry.md,docs/shared/kafka-external-stream-read.md: per-strategy default sentence links to the table instead of repeating version lists.Per-line facts
Source read at each ref (
ExternalStreamSettings.h,MergeTreeSettings.h), updated 2026-10-29 ~15:10 UTC. "Live" = run on the official image on the local lab (Avro and Protobuf, same topic bytes, 11-12 cases, 35 variants). Results:~/hotfix-qa/v3.4.1-...,v3.4.2-rc.1-...,v3.5.1-rc.0-consume-schema-strategy-validation/03-RESULTS.mdand/home/test/hotfix-qa-342rc2/03-RESULTS.md(rc.2; the root disk was full).consume_schema_strategyschema_message_namettl_move_grace_secondsv2.8.49,v3.2.15,v3.3.3v3.3.4""-> derived (#12502)v3.4.1,v3.4.2-rc.1singlev3.4.2-rc.2(d3c868b5=1a1a6d7f+ version bump =3.4HEAD)""-> derived (#12508)v3.5.1-rc.0(2af5614e= #12510 merge + version bump)""-> derived (#12510)develop)Live-verified on 3.4.1 / 3.4.2-rc.1: with TopicNameStrategy or unset, frames with a foreign schema id are silently skipped;
count()returns the raw message count (4 vs 2);schema_message_name-> code 115;consume_schema_strategy=''-> 471. Also in the docs text since 9c61597: withsingle, a Protobuf sibling message in the same schema id is not skipped, and (Avro, evolved subject) frames written with an earlier subject version are dropped (only the latest schema id is accepted). The earlier-version case was only run for Avro; the text says so.Live-verified on 3.4.2-rc.2 and 3.5.1-rc.0 (identical on all 35 variants): default derived from
subject_name_strategyexactly as on 3.3.4 (unset/TopicNameStrategy -> all 4 rows; Record/TopicRecord/custom -> Order only,count()2); sibling and earlier-version frames handled;schema_message_nameand''accepted.Why this is still a draft
Blocking (do not mark ready until resolved):
main.Docs text lacks the two live-verified 3.4.1 factsDone in 9c61597 (see Changes). Remaining caveat: the earlier-schema-version behavior was live-tested on Avro only; the Protobuf equivalent is not tested.v3.4.2-rc.2andv3.5.1-rc.0. The table says "3.4.2 and later": live-verified true for rc.2 and false for rc.1, so any 3.4.2 GA must be cut from rc.2 or later. A "3.5.1 and later" row is not in the text yet; add it with the real number once 3.5.1 is released. 3.5.0 and earlier are not covered (before #12510,develophad a fixedalldefault).Evidence gaps (weaken the claims, not blocking by themselves):
4. The 3.4.1 -> 3.4.2+ upgrade note (TopicNameStrategy
single->all) is derived from source, not from an in-place upgrade on one volume (also not run:ALTER+ restart on the fixed build, downgrade). A 3.4.1 -> 3.5.x swap is a major-line jump and would not prove it.5. 2.8.x / 3.2.x rows rest on the setting being absent in
v2.8.49/v3.2.15source (local images exist; the Unknown-setting (115) check has not been run).6.
docusaurus buildpasses locally;spellchecknot run (binary not installed in the clone).Closed today: 3.4 HEAD live behavior (rc.2), develop/3.5 live behavior (3.5.1-rc.0),
ttl_move_grace_secondsvalues checked at the tags, blocker 2 (docs text, 9c61597).Refs: proton-enterprise#12508, #12509 (closed), #12510 (merged); docs#701, docs#699.