morningman opened a new pull request, #69552:
URL: https://github.com/apache/doris/pull/69552

   ### What problem does this PR solve?
   
   Issue Number: None
   
   Related PR: #66246, #66007, #66112
   
   Problem Summary:
   
   **In short.** This ports test assertions from branch-4.1 #66246 that master 
never got. #66246 backported #66112, #66223 and #66007 to branch-4.1 and added 
checks for historical joins, branch reads and DESC comments on Iceberg tables. 
Master already behaves as those checks expect, but its suites either lack them 
or still assert the old, negative contract. No production code changes.
   
   **Background.** An audit of every block of #66246 that branch-4.2 still has, 
against master, found these test gaps. Everything else in #66246 is on master 
in another form (mostly in the connector plugins) or was replaced on master. 
One behavior differs on purpose: a plain Hudi read on master is not pinned to 
the instant seen at analysis (#64304). This PR leaves that alone.
   
   **The problem, and what it cost.** Without the checks, a regression in these 
paths would go unnoticed, and two suites still describe the current behavior as 
a defect:
   
   | Suite | Master today | After this PR |
   |---|---|---|
   | `test_iceberg_schema_dual_relation_matrix` | no check that a historical 
relation and the latest relation of the same table keep their own schemas in 
one join | both join orders checked: `old_name` on the snapshot, `new_name` on 
the latest table |
   | `test_iceberg_schema_time_travel_matrix` | branch reads checked only as 
"negative contracts": the old name is unknown, nested types are promoted | a 
branch read uses the table's current schema; renamed and re-added fields read 
NULL from the branch head (`qt_`, same rows as branch-4.2) |
   | `test_iceberg_schema_metadata_atomicity_matrix` | asserts that DESC omits 
Iceberg field comments, which only holds because 
`show_column_comment_in_describe` is off by default | enables the variable and 
asserts that DESC shows the top-level and nested comments |
   | `CreateTableCommandTest` | #67545 replaced the "existing CTAS target fails 
before any sink is built" case with the configuration preflight case | the 
existing-target case is back, next to the preflight case |
   
   **How this PR fixes it.**
   
   - `test_iceberg_schema_dual_relation_matrix` gets the two joins from 
branch-4.2, written with `assertEquals` like the rest of the master suite.
   - `test_iceberg_schema_time_travel_matrix` keeps master's checks, rewords 
their comments, and adds `qt_doris_nested_branch_current_schema` and 
`qt_top_branch_current_schema` from branch-4.2, with a new `.out`.
   - `test_iceberg_schema_metadata_atomicity_matrix` sets 
`show_column_comment_in_describe=true` and asserts that the comments are shown, 
as on branch-4.2.
   - 
`CreateTableCommandTest#existingCtasTargetPrecedesUnsupportedSinkValidation` 
comes from branch-4.2. On master the configuration preflight runs first, so the 
test stubs it to pass.
   
   **Results.** On a local cluster built from master with the Iceberg docker 
environment, the three suites pass. The `.out` is generated by the regression 
script and has the same rows as branch-4.2. All 4 cases of 
`CreateTableCommandTest` pass, and checkstyle passes.
   
   Original author: @Gabriel39
   
   ### Release note
   
   None
   
   ### Check List (For Author)
   
   - Test <!-- At least one of them must be included. -->
       - [x] Regression test
       - [x] Unit Test
       - [ ] Manual test (add detailed scripts or steps below)
       - [ ] No need to test or manual test. Explain why:
           - [ ] This is a refactor/code format and no logic has been changed.
           - [ ] Previous test can cover this change.
           - [ ] No code files have been changed.
           - [ ] Other reason <!-- Add your reason?  -->
   
   - Behavior changed:
       - [x] No.
       - [ ] Yes. <!-- Explain the behavior change -->
   
   - Does this need documentation?
       - [x] No.
       - [ ] Yes. <!-- Add document PR link here. eg: 
https://github.com/apache/doris-website/pull/1214 -->
   
   ### Check List (For Reviewer who merge this PR)
   
   - [ ] Confirm the release note
   - [ ] Confirm test cases
   - [ ] Confirm document
   - [ ] Add branch pick label <!-- Add branch pick label that this PR should 
merge into -->
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to