Skip to content

build: disable bazel test validations#67596

Closed
winoros wants to merge 8 commits into
pingcap:masterfrom
winoros:disable-bazel-test-validations
Closed

build: disable bazel test validations#67596
winoros wants to merge 8 commits into
pingcap:masterfrom
winoros:disable-bazel-test-validations

Conversation

@winoros
Copy link
Copy Markdown
Member

@winoros winoros commented Apr 7, 2026

What problem does this PR solve?

Issue Number: ref #66760

Problem Summary:

One try.

What changed and how does it work?

Check List

Tests

  • Unit test
  • Integration test
  • Manual test (add detailed scripts or steps below)
  • No need to test
    • I checked and no code files have been changed.

Side effects

  • Performance regression: Consumes more CPU
  • Performance regression: Consumes more Memory
  • Breaking backward compatibility

Documentation

  • Affects user behaviors
  • Contains syntax changes
  • Contains variable changes
  • Contains experimental features
  • Changes MySQL compatibility

Release note

Please refer to Release Notes Language Style Guide to write a quality release note.

None

Summary by CodeRabbit

  • Chores
    • Updated test execution configuration to disable validations during test runs, which may improve test performance.

@ti-chi-bot ti-chi-bot Bot added the release-note-none Denotes a PR that doesn't merit a release note. label Apr 7, 2026
@pantheon-ai
Copy link
Copy Markdown

pantheon-ai Bot commented Apr 7, 2026

@winoros I've received your pull request and will start the review. I'll conduct a thorough review covering code quality, potential issues, and implementation details.

⏳ This process typically takes 10-30 minutes depending on the complexity of the changes.

ℹ️ Learn more details on Pantheon AI.

@ti-chi-bot ti-chi-bot Bot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label Apr 7, 2026
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 7, 2026

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Modified Makefile test and coverage targets to use a new Bazel configuration variable BAZEL_TEST_CMD_CONFIG that includes --norun_validations flag. Updated multiple test targets across real-TiKV test suite, and adjusted the bazel_coverage_test target to use HOST_CPUS instead of a fixed job count.

Changes

Cohort / File(s) Summary
Bazel Test Configuration Variable
Makefile.common
Added new variable BAZEL_TEST_CMD_CONFIG extending BAZEL_CMD_CONFIG with --norun_validations flag.
Bazel Test Targets
Makefilebazel_test, bazel_brietest, bazel_pessimistictest, bazel_sessiontest, bazel_statisticstest, bazel_txntest, bazel_pushdowntest, bazel_addindextest*, bazel_importintotest*, bazel_pipelineddmltest, bazel_flashbacktest, bazel_ddltest
Rewired test invocations to use $(BAZEL_TEST_CMD_CONFIG) instead of $(BAZEL_CMD_CONFIG), disabling validations during test execution.
Coverage Test Target
Makefilebazel_coverage_test
Updated to use $(BAZEL_TEST_CMD_CONFIG) and changed --jobs=35 to --jobs=$(HOST_CPUS) for dynamic job count allocation.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Suggested labels

ok-to-test

Suggested reviewers

  • lance6716
  • tiancaiamao

Poem

🐰 A hop through the Makefile so bright,
With validations now off for test night,
The jobs dance with CPU's call,
Configuration simplified for all! ✨

🚥 Pre-merge checks | ✅ 1 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 46.43% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Description check ❓ Inconclusive The PR description is incomplete. While it references an issue and marks unit tests as included, it lacks a clear 'What changed and how does it work' section explaining the Makefile and Makefile.common modifications. Add detailed explanation of changes: describe the new BAZEL_TEST_CMD_CONFIG variable, which Makefile targets were updated, and why --norun_validations is needed for the mentioned issue.
✅ Passed checks (1 passed)
Check name Status Explanation
Title check ✅ Passed The title 'build: disable bazel test validations' is clear and directly summarizes the main change—disabling Bazel test validations via the new BAZEL_TEST_CMD_CONFIG variable with --norun_validations flag.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 7, 2026

Codecov Report

❌ Patch coverage is 79.89950% with 40 lines in your changes missing coverage. Please review.
✅ Project coverage is 77.4256%. Comparing base (997e75c) to head (6fb696b).
⚠️ Report is 27 commits behind head on master.

Additional details and impacted files
@@               Coverage Diff                @@
##             master     #67596        +/-   ##
================================================
- Coverage   77.5871%   77.4256%   -0.1616%     
================================================
  Files          1981       1966        -15     
  Lines        547950     549313      +1363     
================================================
+ Hits         425139     425309       +170     
- Misses       122001     123987      +1986     
+ Partials        810         17       -793     
Flag Coverage Δ
integration 40.9316% <79.8995%> (+6.5919%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
dumpling 61.5065% <ø> (+0.0901%) ⬆️
parser ∅ <ø> (∅)
br 49.9196% <ø> (-10.5116%) ⬇️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@winoros
Copy link
Copy Markdown
Member Author

winoros commented Apr 7, 2026

All is cached. Wait for cache invalidation.

@winoros
Copy link
Copy Markdown
Member Author

winoros commented Apr 7, 2026

/hold

@ti-chi-bot ti-chi-bot Bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Apr 7, 2026
@winoros
Copy link
Copy Markdown
Member Author

winoros commented Apr 8, 2026

one more try.

@winoros winoros closed this Apr 8, 2026
@winoros winoros reopened this Apr 8, 2026
winoros added 2 commits April 9, 2026 19:52
commit ade4e1b
Author: Yiding <winoros@gmail.com>
Date:   Thu Apr 9 19:52:06 2026 +0800

    bazel_prepare

commit fead675
Merge: 88ac540 997e75c
Author: Yiding <winoros@gmail.com>
Date:   Thu Apr 9 18:59:33 2026 +0800

    Merge branch 'master' into new-null-reject

    # Conflicts:
    #	pkg/planner/core/casetest/windows/testdata/window_push_down_suite_out.json
    #	pkg/planner/core/casetest/windows/testdata/window_push_down_suite_xut.json

commit 88ac540
Merge: 790d28e 90dda82
Author: Yiding Cui <winoros@gmail.com>
Date:   Tue Apr 7 22:38:33 2026 +0800

    Merge remote-tracking branch 'origin/master' into new-null-reject

    # Conflicts:
    #	pkg/planner/core/casetest/windows/testdata/window_push_down_suite_out.json
    #	pkg/planner/core/casetest/windows/testdata/window_push_down_suite_xut.json

commit 790d28e
Author: Yiding Cui <winoros@gmail.com>
Date:   Tue Apr 7 20:59:56 2026 +0800

    fix test output

commit 57e07c9
Author: Yiding Cui <winoros@gmail.com>
Date:   Fri Apr 3 15:03:31 2026 +0800

    change test result

commit 5783407
Author: Yiding Cui <winoros@gmail.com>
Date:   Fri Apr 3 15:03:21 2026 +0800

    add comments

commit e49bb07
Author: Yiding Cui <winoros@gmail.com>
Date:   Fri Apr 3 14:25:09 2026 +0800

    bazel_prepare

commit 6058897
Author: Yiding Cui <winoros@gmail.com>
Date:   Fri Apr 3 13:56:37 2026 +0800

    planner/util: group null reject builtin registry by type

commit 66d60ee
Author: Yiding Cui <winoros@gmail.com>
Date:   Fri Apr 3 13:54:15 2026 +0800

    add more null preserving functions

commit aa2e799
Author: Yiding Cui <winoros@gmail.com>
Date:   Fri Apr 3 13:28:30 2026 +0800

    planner/util: fix typed null folding in null reject proof

commit e49e10d
Author: Yiding Cui <winoros@gmail.com>
Date:   Fri Apr 3 13:16:39 2026 +0800

    planner/util: split null reject builtin tables

commit b7c1719
Merge: 46181d5 2e1dffb
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 26 16:31:15 2026 +0800

    Merge remote-tracking branch 'origin/master' into new-null-reject

commit 46181d5
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 26 16:30:27 2026 +0800

    planner: add issue 66824 null-reject unit case

commit 24bbd68
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 26 16:10:03 2026 +0800

    planner: add null reject proof comments

commit 590101e
Merge: 767d317 2c3290c
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 19 18:35:01 2026 +0800

    Merge remote-tracking branch 'origin/master' into new-null-reject

    # Conflicts:
    #	pkg/planner/core/casetest/rule/testdata/outer2inner_out.json
    #	pkg/planner/core/casetest/rule/testdata/outer2inner_xut.json

commit 767d317
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 19 03:50:41 2026 +0800

    planner: stop treating FORMAT as null-preserving in null-reject proof

commit 2e0f857
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 19 03:25:53 2026 +0800

    docs,expression,tests: address nitpick comments

commit 73eab0d
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 19 03:19:43 2026 +0800

    planner: avoid leaking null-reject warnings

commit 67bcb83
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 19 03:05:57 2026 +0800

    planner: use null reject expr ctx in null misc

commit 85bfa0d
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 19 01:50:19 2026 +0800

    planner: fix lll lint in null_misc

commit 38ba330
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 19 01:33:14 2026 +0800

    add doc

commit 088a8f0
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 19 01:02:42 2026 +0800

    planner: fix null reject proof for field, quote and if

commit f598772
Author: Yiding Cui <winoros@gmail.com>
Date:   Mon Mar 16 21:48:32 2026 +0800

    planner: add null-reject regression tests

commit 785f4e8
Author: Yiding Cui <winoros@gmail.com>
Date:   Mon Mar 16 21:47:51 2026 +0800

    planner: replace outer-join null-reject evaluation with structural proof
@ti-chi-bot ti-chi-bot Bot added sig/planner SIG: Planner size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Apr 9, 2026
Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@pkg/planner/util/null_misc.go`:
- Around line 74-77: The call to MaybeOverOptimized4PlanCache inside
allConstants (and similar sites) ignores the skipPlanCacheCheck flag; thread the
skipPlanCacheCheck boolean through proveNullRejected → tryFoldNullifiedConstant
→ tryFoldStaticConstant → allConstants (and other affected locations) and only
call MaybeOverOptimized4PlanCache when skipPlanCacheCheck is false, so callers
that set skipPlanCacheCheck=true can bypass the plan-cache guard and still prove
null-rejection; update function signatures (e.g., proveNullRejected,
tryFoldNullifiedConstant, tryFoldStaticConstant, allConstants) to accept the
flag and propagate it accordingly.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 5f011776-f6b0-4935-b19c-6a1c49d49deb

📥 Commits

Reviewing files that changed from the base of the PR and between d70537e and e9a2691.

📒 Files selected for processing (22)
  • docs/design/2026-03-16-null-reject-proof-framework.md
  • pkg/expression/BUILD.bazel
  • pkg/expression/builtin_registry.go
  • pkg/planner/core/casetest/plancache/plan_cache_suite_test.go
  • pkg/planner/core/casetest/rule/rule_outer2inner_test.go
  • pkg/planner/core/casetest/rule/testdata/outer2inner_out.json
  • pkg/planner/core/casetest/rule/testdata/outer2inner_xut.json
  • pkg/planner/core/casetest/windows/testdata/window_push_down_suite_out.json
  • pkg/planner/core/casetest/windows/testdata/window_push_down_suite_xut.json
  • pkg/planner/core/operator/logicalop/BUILD.bazel
  • pkg/planner/core/operator/logicalop/logical_join.go
  • pkg/planner/core/partidx/check_constraint.go
  • pkg/planner/util/BUILD.bazel
  • pkg/planner/util/null_misc.go
  • pkg/planner/util/null_misc_builtins.go
  • pkg/planner/util/null_misc_test.go
  • tests/integrationtest/r/planner/core/integration.result
  • tests/integrationtest/r/planner/core/plan_cache.result
  • tests/integrationtest/r/planner/core/rule_outer2inner.result
  • tests/integrationtest/t/planner/core/plan_cache.test
  • tests/integrationtest/t/planner/core/rule_outer2inner.test
  • tests/realtikvtest/pushdowntest/BUILD.bazel
💤 Files with no reviewable changes (1)
  • pkg/planner/core/operator/logicalop/BUILD.bazel
✅ Files skipped from review due to trivial changes (4)
  • pkg/planner/core/partidx/check_constraint.go
  • pkg/expression/BUILD.bazel
  • tests/realtikvtest/pushdowntest/BUILD.bazel
  • tests/integrationtest/r/planner/core/integration.result

Comment thread pkg/planner/util/null_misc.go
@tiprow
Copy link
Copy Markdown

tiprow Bot commented Apr 9, 2026

@winoros: The specified target(s) for /test were not found.
The following commands are available to trigger required jobs:

/test fast_test_tiprow
/test tidb_parser_test

Use /test all to run all jobs.

Details

In response to this:

/test check_dev_2

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@winoros
Copy link
Copy Markdown
Member Author

winoros commented Apr 9, 2026

/test check-dev2

@pingcap pingcap deleted a comment from tiprow Bot Apr 9, 2026
@pingcap pingcap deleted a comment from ti-chi-bot Bot Apr 9, 2026
@ti-chi-bot ti-chi-bot Bot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Apr 9, 2026
@winoros
Copy link
Copy Markdown
Member Author

winoros commented Apr 10, 2026

winoros added 3 commits April 10, 2026 09:51
commit ade4e1b
Author: Yiding <winoros@gmail.com>
Date:   Thu Apr 9 19:52:06 2026 +0800

    bazel_prepare

commit fead675
Merge: 88ac540 997e75c
Author: Yiding <winoros@gmail.com>
Date:   Thu Apr 9 18:59:33 2026 +0800

    Merge branch 'master' into new-null-reject

    # Conflicts:
    #	pkg/planner/core/casetest/windows/testdata/window_push_down_suite_out.json
    #	pkg/planner/core/casetest/windows/testdata/window_push_down_suite_xut.json

commit 88ac540
Merge: 790d28e 90dda82
Author: Yiding Cui <winoros@gmail.com>
Date:   Tue Apr 7 22:38:33 2026 +0800

    Merge remote-tracking branch 'origin/master' into new-null-reject

    # Conflicts:
    #	pkg/planner/core/casetest/windows/testdata/window_push_down_suite_out.json
    #	pkg/planner/core/casetest/windows/testdata/window_push_down_suite_xut.json

commit 790d28e
Author: Yiding Cui <winoros@gmail.com>
Date:   Tue Apr 7 20:59:56 2026 +0800

    fix test output

commit 57e07c9
Author: Yiding Cui <winoros@gmail.com>
Date:   Fri Apr 3 15:03:31 2026 +0800

    change test result

commit 5783407
Author: Yiding Cui <winoros@gmail.com>
Date:   Fri Apr 3 15:03:21 2026 +0800

    add comments

commit e49bb07
Author: Yiding Cui <winoros@gmail.com>
Date:   Fri Apr 3 14:25:09 2026 +0800

    bazel_prepare

commit 6058897
Author: Yiding Cui <winoros@gmail.com>
Date:   Fri Apr 3 13:56:37 2026 +0800

    planner/util: group null reject builtin registry by type

commit 66d60ee
Author: Yiding Cui <winoros@gmail.com>
Date:   Fri Apr 3 13:54:15 2026 +0800

    add more null preserving functions

commit aa2e799
Author: Yiding Cui <winoros@gmail.com>
Date:   Fri Apr 3 13:28:30 2026 +0800

    planner/util: fix typed null folding in null reject proof

commit e49e10d
Author: Yiding Cui <winoros@gmail.com>
Date:   Fri Apr 3 13:16:39 2026 +0800

    planner/util: split null reject builtin tables

commit b7c1719
Merge: 46181d5 2e1dffb
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 26 16:31:15 2026 +0800

    Merge remote-tracking branch 'origin/master' into new-null-reject

commit 46181d5
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 26 16:30:27 2026 +0800

    planner: add issue 66824 null-reject unit case

commit 24bbd68
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 26 16:10:03 2026 +0800

    planner: add null reject proof comments

commit 590101e
Merge: 767d317 2c3290c
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 19 18:35:01 2026 +0800

    Merge remote-tracking branch 'origin/master' into new-null-reject

    # Conflicts:
    #	pkg/planner/core/casetest/rule/testdata/outer2inner_out.json
    #	pkg/planner/core/casetest/rule/testdata/outer2inner_xut.json

commit 767d317
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 19 03:50:41 2026 +0800

    planner: stop treating FORMAT as null-preserving in null-reject proof

commit 2e0f857
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 19 03:25:53 2026 +0800

    docs,expression,tests: address nitpick comments

commit 73eab0d
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 19 03:19:43 2026 +0800

    planner: avoid leaking null-reject warnings

commit 67bcb83
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 19 03:05:57 2026 +0800

    planner: use null reject expr ctx in null misc

commit 85bfa0d
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 19 01:50:19 2026 +0800

    planner: fix lll lint in null_misc

commit 38ba330
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 19 01:33:14 2026 +0800

    add doc

commit 088a8f0
Author: Yiding Cui <winoros@gmail.com>
Date:   Thu Mar 19 01:02:42 2026 +0800

    planner: fix null reject proof for field, quote and if

commit f598772
Author: Yiding Cui <winoros@gmail.com>
Date:   Mon Mar 16 21:48:32 2026 +0800

    planner: add null-reject regression tests

commit 785f4e8
Author: Yiding Cui <winoros@gmail.com>
Date:   Mon Mar 16 21:47:51 2026 +0800

    planner: replace outer-join null-reject evaluation with structural proof
@ti-chi-bot
Copy link
Copy Markdown

ti-chi-bot Bot commented Apr 10, 2026

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign elsa0520, zanmato1984 for approval. For more information see the Code Review Process.
Please ensure that each of them provides their approval before proceeding.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@ti-chi-bot ti-chi-bot Bot added size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Apr 10, 2026
@ti-chi-bot
Copy link
Copy Markdown

ti-chi-bot Bot commented Apr 10, 2026

@winoros: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
idc-jenkins-ci-tidb/mysql-test 6fb696b link true /test mysql-test
pull-integration-realcluster-test-next-gen 6fb696b link true /test pull-integration-realcluster-test-next-gen

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@winoros
Copy link
Copy Markdown
Member Author

winoros commented Apr 15, 2026

with the remote cache, disabling static check seems that it doesn't help a lot.

@winoros winoros closed this Apr 15, 2026
@winoros winoros deleted the disable-bazel-test-validations branch April 15, 2026 14:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. release-note-none Denotes a PR that doesn't merit a release note. sig/planner SIG: Planner size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant