Repository navigation
[enhancement](thirdparty) fix arrow build bug and clear dangerous env… - #67535
Merged
Merged
Conversation
…apache#67523) Issue Number: close #xxx Related PR: #xxx Problem Summary: None - Test <!-- At least one of them must be included. --> - [ ] Regression test - [ ] 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: - [ ] No. - [ ] Yes. <!-- Explain the behavior change --> - Does this need documentation? - [ ] No. - [ ] Yes. <!-- Add document PR link here. eg: apache/doris-website#1214 --> - [ ] Confirm the release note - [ ] Confirm test cases - [ ] Confirm document - [ ] Add branch pick label <!-- Add branch pick label that this PR should merge into -->
Contributor
|
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
Contributor
Author
|
run buildall |
Contributor
BE UT Coverage ReportIncrement line coverage Increment coverage report
|
Contributor
BE Regression && UT Coverage ReportIncrement line coverage Increment coverage report
|
morningman
approved these changes
Sep 5, 2026
3 of 5 tasks
yiguolei
pushed a commit
that referenced
this pull request
Sep 7, 2026
…angled in the #64093 backport (#67564) ### What problem does this PR solve? Problem Summary: Every branch-4.1 PR that touches `thirdparty/` fails `Build Third Party Libraries (macOS-arm64)` after two to three minutes, inside `download-thirdparty.sh`, long before anything is compiled: ``` patching file 'src/dwarf/Gfind_proc_info-lsb.c' 2 out of 2 hunks failed--saving rejects to 'src/dwarf/Gfind_proc_info-lsb.c.rej' ##[error]Process completed with exit code 1. ``` | PR | base | `Build Third Party Libraries (macOS-arm64)` | |---|---|---| | #67378 | branch-4.1 | fail, 5m18s — these hunks | | #67356 | branch-4.1 | fail, 3m11s — these hunks | | #67523 | branch-4.1 | fail, 2m43s — these hunks | | #67554 | branch-4.1 | fail, 2m43s — these hunks | | **#67535** — same change as #67523 | **master** | **pass, 2h26m full build** | The last row is the point: the same content passes on master and dies in the patch step on branch-4.1. **Root cause.** `thirdparty/patches/libunwind-1.6.2-doris-phdr-cache.patch` is corrupt on this branch. It arrived that way in `4439e6f6b46` (the backport of #64093) and does not match the file master carries (`dc70115a432`) — even though both branches pin the same libunwind 1.6.2 with the same md5 and run byte-identical patching code in `download-thirdparty.sh`. In master's copy the blank lines around the change are **context** lines, each a line holding a single space. In this branch's copy they are **deletion** lines (`-` with nothing after it), with the hunk headers renumbered to match that reading (`@@ -46,3 +46,8 @@` instead of `@@ -47,6 +47,14 @@`, `@@ -805,5 +810,6 @@` instead of `@@ -804,7 +812,10 @@`) and the trailing context dropped. That is what a trailing-whitespace strip followed by a hand repair leaves behind. The patch now asks `patch(1)` to delete blank lines that the real source does not have at those offsets. **Why only macOS.** GNU patch on the Linux runner recovers from it — `Hunk #1 succeeded at 12 with fuzz 1` — and the Linux job passes, which is why this went unnoticed for a week. The macOS runner's `patch` rejects both hunks and `download-thirdparty.sh` exits 1. **Fix.** Take master's copy verbatim. One file, nothing else. ### Release note None ### Check List (For Author) - Test - [ ] Regression test - [ ] Unit Test - [x] Manual test (add detailed scripts or steps below) Verified against the pinned tarball (`libunwind-1.6.2.tar.gz`, md5 `f625b6a98ac1976116c71708a73dc44a`) with the same patch implementation the runner uses (`patch 2.0-12u11-Apple`), on two pristine copies of the extracted source: | patch file | exit | result | |---|---|---| | this branch's current file | **1** | `2 out of 2 hunks failed` — byte-identical to the CI message | | this PR's file | **0** | applies cleanly, no `.rej` | After applying, the weak declaration and the fork land where `be/src/common/phdr_cache.cpp` expects them: ``` 54:extern int doris_unwind_iterate_phdr (int (*callback) (struct dl_phdr_info *, size_t, void *), 55: void *data, unw_word_t ip) __attribute__ ((weak)); ... 815: if (doris_unwind_iterate_phdr) 816: ret = doris_unwind_iterate_phdr (dwarf_callback, &cb_data, ip); 817: else 818: ret = dl_iterate_phdr (dwarf_callback, &cb_data); ``` This branch does define that symbol (`be/src/common/phdr_cache.cpp:249`), so the fix restores the intended behaviour rather than being a no-op. Linux builds were already getting it via fuzz, so no behaviour changes there. - Behavior changed: - [x] No. Linux already applied this patch (with fuzz); this only makes the macOS thirdparty build stop failing. - Does this need documentation? - [x] No. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01DzUYFcGHQH3bnLGCjpncVj Co-authored-by: Claude Opus 5 (1M context) <[email protected]>
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.
… (#67523)
Issue Number: close #xxx
Related PR: #xxx
Problem Summary:
None
Test
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
Behavior changed:
Does this need documentation?
Yes.
Confirm the release note
Confirm test cases
Confirm document
Add branch pick label
What problem does this PR solve?
Issue Number: close #xxx
Related PR: #xxx
Problem Summary:
Release note
None
Check List (For Author)
Test
Behavior changed:
Does this need documentation?
Check List (For Reviewer who merge this PR)