Skip to content

branch-4.1: [fix](test) run search score TopN case in nonConcurrent group - #67363

Open
airborne12 wants to merge 1 commit into
apache:branch-4.1from
airborne12:fix-search-topn-nonconcurrent
Open

branch-4.1: [fix](test) run search score TopN case in nonConcurrent group#67363
airborne12 wants to merge 1 commit into
apache:branch-4.1from
airborne12:fix-search-topn-nonconcurrent

Conversation

@airborne12

Copy link
Copy Markdown
Member

What problem does this PR solve?

Issue Number: N/A

Related PR: #67327 (which backported #65821 and introduced this suite)

Problem Summary:

test_search_score_topn_predicates fails intermittently on the shared P0 pipeline of branch-4.1. It always fails on its very first query (line 59), right after CREATE TABLE + INSERT + sync, with:

errCode = 2, detailMessage = [INTERNAL_ERROR]SearchExpr should not be executed without inverted index

Observed on branch-4.1 CI, 2 failures out of 4 runs — builds 1034808 (PR #67327) and 1035495 (PR #67342) failed, while 1035120 (rerun of #67327, identical code, 5530 tests passed) and 1035335 (PR #67340, after the suite landed) passed. At roughly a 50% hit rate it randomly reddens unrelated branch-4.1 PRs, so it needs to stop running in the concurrent P0 group.

The case is not wrong on its own: it passes locally against both a 1-BE and a 3-BE cluster built from this branch, and the CI rerun with identical code passed as well. That points at contention on the shared P0 runner (the index of the freshly inserted rowset not being usable yet at query time) rather than at the query. branch-4.1 also lacks master's prevent_search_row_fallback path (added by #66052 together with the SNII format), so on this branch a search that does not take the index surfaces the internal error directly instead of falling back.

Fix: move the suite to the nonConcurrent group so it runs serialized, as 35 other inverted_index_p0 cases on this branch already do. No test logic or expected output changes.

Release note

None

Check List (For Author)

  • Test

    • 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
  • Behavior changed:

    • No.
    • Yes.
  • Does this need documentation?

    • No.
    • Yes.

Check List (For Reviewer who merge this PR)

  • Confirm the release note
  • Confirm test cases
  • Confirm document
  • Add branch pick label

…roup

test_search_score_topn_predicates fails intermittently on the shared P0
pipeline with '[INTERNAL_ERROR]SearchExpr should not be executed without
inverted index' on its first query, right after CREATE TABLE + INSERT +
sync. Observed 2 failures out of 4 runs on branch-4.1 CI (builds 1034808
and 1035495 failed, 1035120 and 1035335 passed), so it randomly reddens
unrelated branch-4.1 PRs.

The case never fails when run alone: it passes locally against both a
1-BE and a 3-BE cluster, and passed on the CI rerun 1035120 with the
identical code, which points at contention on the shared P0 runner
rather than at the query itself. branch-4.1 also lacks master's
prevent_search_row_fallback path (added by apache#66052), so a search that
does not take the index reports this error instead of falling back.

Move it to the nonConcurrent group, as 35 other inverted_index_p0 cases
on this branch already do, so it runs serialized.

Verified: suite passes locally with the tag applied.
@airborne12
airborne12 requested a review from yiguolei as a code owner September 1, 2026 07:03
@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?

@airborne12

Copy link
Copy Markdown
Member Author

run buildall

@airborne12

Copy link
Copy Markdown
Member Author

COMPILE has failed twice here (builds 1035610 and 1035744) and both landed on the same TeamCity agent, agent_172.16.0.152_1, with the identical error:

src/util/thrift_util.cpp:103:21: error: no member named 'GlobalOutput' in namespace 'apache::thrift'

This PR changes exactly one line in one regression .groovy file (adding the nonConcurrent group tag), so it cannot affect the BE C++ thrift build. Meanwhile seven other PRs compiled green in the same window on other agents (builds 1035762, 1035766, 1035768, 1035774, 1035782, 1035786, 1035788), so the branch tip is fine and this looks like a stale/incompatible thrift in that one agent's thirdparty. Re-triggering so it can be scheduled elsewhere.

@airborne12

Copy link
Copy Markdown
Member Author

run compile

@airborne12

Copy link
Copy Markdown
Member Author

Correction to my earlier comment: this is not specific to one agent, it is a fleet-wide thirdparty problem on the CI right now.

COMPILE has now failed four times here (1035610, 1035744, 1035807, 1035947) across four different agents (172.16.0.152 twice, .215, .42), always at:

src/util/thrift_util.cpp:103:21: error: no member named 'GlobalOutput' in namespace 'apache::thrift'

And other unrelated PRs are failing the same way in the same window: build 1035948 (#67398) fails at the identical thrift line, while 1036005 (#67214) and 1036002 (#66913) fail on the paimon zstd.h variant of the same thirdparty inconsistency. My earlier claim that sibling PRs were compiling green was wrong — I read in-progress builds whose status field still showed SUCCESS; their finished results are FAILURE.

This PR changes one line in one regression .groovy file, so it cannot be the cause. I am not re-triggering any further; this needs the CI/thirdparty owners to refresh the prebuilt thirdparty on the build fleet.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants