Skip to content

[fix](binlog) Parse table stream properties before base validation - #66683

Open
luwei16 wants to merge 1 commit into
apache:masterfrom
luwei16:fix/doris-27907-table-stream-type-validation
Open

[fix](binlog) Parse table stream properties before base validation#66683
luwei16 wants to merge 1 commit into
apache:masterfrom
luwei16:fix/doris-27907-table-stream-type-validation

Conversation

@luwei16

@luwei16 luwei16 commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

What problem does this PR solve?

Issue Number: None

Related PR: None

Problem Summary: CREATE STREAM validated the base table with the stream object default MIN_DELTA type before parsing the requested stream properties. This incorrectly rejected valid APPEND_ONLY and DETAIL streams on UNIQUE or PRIMARY ROW-binlog tables that did not meet MIN_DELTA historical-value requirements. Parse and apply the stream properties before performing type-dependent base-table validation, while preserving the validation for real MIN_DELTA streams.

Release note

Fix CREATE STREAM so APPEND_ONLY and DETAIL streams are validated using their requested type instead of the default MIN_DELTA type.

Check List (For Author)

  • Test:
    • Unit Test: ./run-fe-ut.sh --run org.apache.doris.catalog.CreateTableStreamTest,org.apache.doris.cloud.datasource.CloudInternalCatalogTableStreamTest (passed: 9 tests)
    • Regression test: ./run-regression-test.sh --run -d table_stream_p0 -s test_create_append_only_stream_without_historical_value (passed: 1 suite)
  • Behavior changed: Yes. Valid APPEND_ONLY and DETAIL streams are no longer rejected by MIN_DELTA-only prerequisites.
  • Does this need documentation: No

### What problem does this PR solve?

Issue Number: None

Related PR: None

Problem Summary: CREATE STREAM validated the base table with the stream object default MIN_DELTA type before parsing the requested stream properties. This incorrectly rejected valid APPEND_ONLY and DETAIL streams on UNIQUE or PRIMARY ROW-binlog tables that did not meet MIN_DELTA historical-value requirements. Parse and apply the stream properties before performing type-dependent base-table validation, while preserving the validation for real MIN_DELTA streams.

### Release note

Fix CREATE STREAM so APPEND_ONLY and DETAIL streams are validated using their requested type instead of the default MIN_DELTA type.

### Check List (For Author)

- Test:
    - Unit Test: ./run-fe-ut.sh --run org.apache.doris.catalog.CreateTableStreamTest,org.apache.doris.cloud.datasource.CloudInternalCatalogTableStreamTest (passed: 9 tests)
    - Regression test: ./run-regression-test.sh --run -d table_stream_p0 -s test_create_append_only_stream_without_historical_value (passed: 1 suite)
- Behavior changed: Yes. Valid APPEND_ONLY and DETAIL streams are no longer rejected by MIN_DELTA-only prerequisites.
- Does this need documentation: No
@luwei16
luwei16 requested a review from gavinchou as a code owner August 12, 2026 08:12
@hello-stephen

Copy link
Copy Markdown
Contributor

Thank you for your contribution to Apache Doris.
Don't know what should be done next? See How to process your PR.

Please clearly describe your PR:

  1. What problem was fixed (it's best to include specific error reporting information). How it was fixed.
  2. Which behaviors were modified. What was the previous behavior, what is it now, why was it modified, and what possible impacts might there be.
  3. What features were added. Why was this function added?
  4. Which code was refactored and why was this part of the code refactored?
  5. Which functions were optimized and what is the difference before and after the optimization?

@luwei16 luwei16 added the binlog label Aug 12, 2026
@luwei16

luwei16 commented Aug 12, 2026

Copy link
Copy Markdown
Contributor Author

run buildall

@github-actions github-actions Bot added the approved Indicates a PR has been approved by one committer. label Aug 12, 2026
@github-actions

Copy link
Copy Markdown
Contributor

PR approved by at least one committer and no changes requested.

@github-actions

Copy link
Copy Markdown
Contributor

PR approved by anyone and no changes requested.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by one committer. binlog reviewed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants