Skip to content

Conversation

@ddelnano
Copy link
Member

@ddelnano ddelnano commented Jan 14, 2025

Summary: Allow clang and gcc builds for src/e2e_test/vizier/planner:planner_test

As far as I can tell, there isn't a bazel config that matches the tags of the src/e2e_test/vizier/planner:planner_test target. This change removes the tag preventing clang builds since they appear to run without problems. In addition to this, a vispb proto change was missing from the earlier differential flamegraph work. This prevented the planner_test from running properly (see comment for more details).

Relevant Issues: N/A

Type of change: /kind bugfix

Test Plan: Verified gcc and clang builds work

  • bazel test --config clang src/e2e_test/vizier/planner:planner_test is successful
  • bazel test -c opt --config gcc src/e2e_test/vizier/planner:planner_test is successful

string percentage_label = 9;
// The column containing the stacktrace's delta. This is only relevant for differential
// flamegraphs.
string difference_column = 10;
Copy link
Member Author

Choose a reason for hiding this comment

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

The recent differential flamegraph changes weren't made to this file. Without this change, the test target fails with the following error:

$ bazel test -c dbg src/e2e_test/vizier/planner:planner_test --test_output=all

INFO: From Testing //src/e2e_test/vizier/planner:planner_test:
==================== Test output for //src/e2e_test/vizier/planner:planner_test:
--- FAIL: TestAllScriptsCompile (0.04s)
    all_scripts_test.go:322:
                Error Trace:    src/e2e_test/vizier/planner/all_scripts_test.go:322
                Error:          Received unexpected error:
                                can't unmarshal Any nested proto *vispb.StackTraceFlameGraph: unknown field "differenceColumn" in vispb.StackTraceFlameGraph
                Test:           TestAllScriptsCompile
FAIL

The flamegraph script has been in a cloud release for a while now and I've used it extensively, so it appears that only the e2e tests here use this proto. Typescript does match on the proto package name, but it has its own data structure for working with it.

@ddelnano ddelnano changed the title Allow clang builds to run Allow clang builds to run src/e2e_test/vizier/planner:planner_test Jan 14, 2025
@ddelnano ddelnano marked this pull request as ready for review January 15, 2025 20:24
@ddelnano ddelnano requested review from a team as code owners January 15, 2025 20:24
Copy link
Member

@NickLanam NickLanam left a comment

Choose a reason for hiding this comment

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

Oof, good catch

@ddelnano ddelnano requested a review from a team as a code owner January 16, 2025 16:36
@ddelnano ddelnano changed the title Allow clang builds to run src/e2e_test/vizier/planner:planner_test Allow clang and gcc builds for src/e2e_test/vizier/planner:planner_test Jan 16, 2025
@ddelnano ddelnano force-pushed the ddelnano/fix-all-scripts-tests branch from d96d31a to 2ac771d Compare January 16, 2025 18:00
Signed-off-by: Dom Del Nano <ddelnano@gmail.com>
Signed-off-by: Dom Del Nano <ddelnano@gmail.com>
Signed-off-by: Dom Del Nano <ddelnano@gmail.com>
Signed-off-by: Dom Del Nano <ddelnano@gmail.com>
Signed-off-by: Dom Del Nano <ddelnano@gmail.com>
@ddelnano ddelnano force-pushed the ddelnano/fix-all-scripts-tests branch from 2ac771d to 91a56ea Compare January 16, 2025 20:18
Copy link
Member

@JamesMBartlett JamesMBartlett left a comment

Choose a reason for hiding this comment

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

lgtm if it works with libcpp

tags = [
"no_asan",
"no_gcc",
"no_libcpp",
Copy link
Member

Choose a reason for hiding this comment

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

Did you check if it works with libcpp?

Copy link
Member Author

Choose a reason for hiding this comment

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

bazel build (without specifying a --config) couldn't find this test target until the no_libcpp was removed. Therefore I thought using libcpp was the default, however, I've tested that --config clang results in a successful build as well.

@ddelnano ddelnano merged commit 685ed42 into pixie-io:main Jan 20, 2025
32 checks passed
@ddelnano ddelnano deleted the ddelnano/fix-all-scripts-tests branch January 20, 2025 18:17
ddelnano added a commit to ddelnano/pixie that referenced this pull request Aug 6, 2025
…est` (pixie-io#2077)

Summary: Allow clang and gcc builds for
`src/e2e_test/vizier/planner:planner_test`

As far as I can tell, there isn't a bazel config that matches the tags
of the `src/e2e_test/vizier/planner:planner_test` target. This change
removes the tag preventing clang builds since they appear to run without
problems. In addition to this, a `vispb` proto change was missing from
the earlier differential flamegraph work. This prevented the
`planner_test` from running properly (see comment for more details).

Relevant Issues: N/A

Type of change: /kind bugfix

Test Plan: Verified gcc and clang builds work
- [x] `bazel test --config clang
src/e2e_test/vizier/planner:planner_test` is successful
- [x] `bazel test -c opt --config gcc
src/e2e_test/vizier/planner:planner_test` is successful

---------

Signed-off-by: Dom Del Nano <ddelnano@gmail.com>
GitOrigin-RevId: 685ed42
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.

3 participants