Add testProcess{Config} task to accept user options#581
Conversation
…ptions argument to tests
CI Test ResultsRun: #29439516770 | Commit:
Status Overview
Legend: ✅ passed | ❌ failed | ⚪ skipped | 🚫 cancelled Failed Testsmusl-aarch64/debug / 8-librcaJob: View logs No detailed failure information available. Check the job logs. musl-aarch64/debug / 11-librcaJob: View logs No detailed failure information available. Check the job logs. musl-amd64/debug / 11-librcaJob: View logs No detailed failure information available. Check the job logs. musl-amd64/debug / 8-librcaJob: View logs No detailed failure information available. Check the job logs. Summary: Total: 32 | Passed: 28 | Failed: 4 Updated: 2026-07-15 20:24:28 UTC |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6f5c7bae36
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: a13c32a888
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
rkennke
left a comment
There was a problem hiding this comment.
Good change. I found one small issue, and a bug, which I then found out that Codex already flagged it:
https://github.com/DataDog/java-profiler/pull/581/changes#r3375494440
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 0a80e41432
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Benchmark Results (commit 0a80e41)Pipeline: https://gitlab.ddbuild.io/DataDog/apm-reliability/benchmarking-platform/-/pipelines/122585095 Commit:
|
| Benchmark | JDK | Latest | Dev | Δ (dev vs latest) | Issues L/D |
|---|---|---|---|---|---|
| akka-uct | 21 | ✅ 10238 ms (7 iters) | ✅ 10306 ms (7 iters) | ≈ +0.7% (±20.1%) | — / — |
| akka-uct | 25 | ✅ 8873 ms (8 iters) | ✅ 8959 ms (8 iters) | ≈ +1% (±18.2%) | — / — |
| finagle-chirper | 21 | ✅ 5991 ms (11 iters) | ✅ 6043 ms (11 iters) | ≈ +0.9% (±47.8%) | |
| finagle-chirper | 25 | ✅ 5449 ms (12 iters) | ✅ 5394 ms (12 iters) | ≈ -1% (±43.6%) | |
| fj-kmeans | 21 | ✅ 2876 ms (22 iters) | ✅ 2821 ms (22 iters) | ≈ -1.9% (±4.3%) | — / — |
| fj-kmeans | 25 | ✅ 2637 ms (24 iters) | ✅ 2841 ms (22 iters) | 🔴 +7.7% | — / — |
| future-genetic | 21 | ✅ 2044 ms (30 iters) | ✅ 2070 ms (30 iters) | ≈ +1.3% (±4.4%) | — / — |
| future-genetic | 25 | ✅ 2057 ms (30 iters) | ✅ 1967 ms (31 iters) | ≈ -4.4% (±4.7%) | — / — |
| naive-bayes | 21 | ✅ 1232 ms (46 iters) | ✅ 1270 ms (45 iters) | ≈ +3.1% (±58.3%) | — / — |
| naive-bayes | 25 | ✅ 1022 ms (56 iters) | ✅ 1024 ms (56 iters) | ≈ +0.2% (±54.4%) | — / — |
| reactors | 21 | ✅ 15424 ms (5 iters) | ✅ 16820 ms (5 iters) | ≈ +9.1% (±14.4%) | — / — |
| reactors | 25 | ✅ 17672 ms (5 iters) | ✅ 18532 ms (5 iters) | ≈ +4.9% (±5.1%) | — / — |
Internal counter details (ddprof)
ddprof internal counters, latest / dev (✅ = 0, · = unavailable):
| Benchmark | JDK | Dropped rec | Dropped jvmti | Dropped trace | Skipped WC | AGCT fail | Unwind fail |
|---|---|---|---|---|---|---|---|
| akka-uct | 21 | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ |
| akka-uct | 25 | ✅ / ✅ | ✅ / ✅ | 1 / 1 | 2246 / 2167 | ✅ / ✅ | ✅ / ✅ |
| finagle-chirper | 21 | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ |
| finagle-chirper | 25 | ✅ / ✅ | ✅ / ✅ | ✅ / 2 | 8269 / 8286 | ✅ / ✅ | ✅ / ✅ |
| fj-kmeans | 21 | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ |
| fj-kmeans | 25 | ✅ / ✅ | ✅ / ✅ | 1 / 1 | 1308 / 1280 | ✅ / ✅ | ✅ / ✅ |
| future-genetic | 21 | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ |
| future-genetic | 25 | ✅ / ✅ | ✅ / ✅ | 3 / 1 | 2907 / 2790 | ✅ / ✅ | ✅ / ✅ |
| naive-bayes | 21 | ✅ / ✅ | ✅ / ✅ | 4 / ✅ | 3486 / ✅ | ✅ / ✅ | ✅ / ✅ |
| naive-bayes | 25 | ✅ / ✅ | ✅ / ✅ | 6 / 6 | 3503 / 3518 | ✅ / ✅ | ✅ / ✅ |
| reactors | 21 | ✅ / ✅ | ✅ / ✅ | 1 / ✅ | 1550 / 1704 | ✅ / ✅ | ✅ / ✅ |
| reactors | 25 | ✅ / ✅ | ✅ / ✅ | ✅ / 1 | 1815 / 1878 | ✅ / ✅ | ✅ / ✅ |
|
|
Summary of what changed in ShutdownTest — CarrierContextStorageTest and IdleThreadLifecycleTest needed no change — neither calls execute() with a profiler command. :ddprof-test:compileTestJava compiles cleanly with these changes (I also removed a handful of stale .o build artifacts left over from an upstream file rename that were unrelated to this fix but were blocking the native link step). |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 710ac934b8
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| result.append(","); | ||
| } | ||
| result.append(entry.getKey()); | ||
| result.append("=").append(entry.getValue()); |
There was a problem hiding this comment.
Preserve no-value profiler flags
When either the base command or -Pprofiler.options contains a flag without an equals sign, this rebuild path stores it as an empty string and then always emits key=. The native parser distinguishes those forms: for example memory uses the default allocation interval while memory= parses to 0, and jvmtistacks enables with no value but jvmtistacks= disables it. As a result, testProcessDebug -Pprofiler.options=memory does not run the requested profiler configuration and can turn on every-allocation sampling instead.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
And this also sounds like a valid concern that's not addressed?
Benchmark Results (commit 710ac93)Pipeline: https://gitlab.ddbuild.io/DataDog/apm-reliability/benchmarking-platform/-/pipelines/122608527 Commit:
|
| Benchmark | JDK | Latest | Dev | Δ (dev vs latest) | Issues L/D |
|---|---|---|---|---|---|
| akka-uct | 21 | ✅ 10387 ms (7 iters) | ✅ 10226 ms (7 iters) | ≈ -1.6% (±21.7%) | — / — |
| akka-uct | 25 | ✅ 8956 ms (8 iters) | ✅ 8826 ms (8 iters) | ≈ -1.5% (±21%) | — / — |
| finagle-chirper | 21 | ✅ 5933 ms (11 iters) | ✅ 6034 ms (11 iters) | ≈ +1.7% (±46.6%) | |
| finagle-chirper | 25 | ✅ 5472 ms (12 iters) | ✅ 5412 ms (12 iters) | ≈ -1.1% (±42.8%) | |
| fj-kmeans | 21 | ✅ 2847 ms (22 iters) | ✅ 2753 ms (23 iters) | ≈ -3.3% (±4.3%) | — / — |
| fj-kmeans | 25 | ✅ 2801 ms (22 iters) | ✅ 2805 ms (22 iters) | ≈ +0.1% (±4.6%) | — / — |
| future-genetic | 21 | ✅ 2041 ms (30 iters) | ✅ 2042 ms (30 iters) | ≈ +0% (±4.6%) | — / — |
| future-genetic | 25 | ✅ 2074 ms (30 iters) | ✅ 1873 ms (33 iters) | 🟢 -9.7% | — / — |
| naive-bayes | 21 | ✅ 1277 ms (45 iters) | ✅ 1223 ms (47 iters) | ≈ -4.2% (±55%) | — / — |
| naive-bayes | 25 | ✅ 1015 ms (56 iters) | ✅ 1019 ms (56 iters) | ≈ +0.4% (±55.6%) | — / — |
| reactors | 21 | ✅ 16615 ms (5 iters) | ✅ 15814 ms (5 iters) | ≈ -4.8% (±14.3%) | — / — |
| reactors | 25 | ✅ 17345 ms (5 iters) | ✅ 18700 ms (5 iters) | 🔴 +7.8% | — / — |
Internal counter details (ddprof)
ddprof internal counters, latest / dev (✅ = 0, · = unavailable):
| Benchmark | JDK | Dropped rec | Dropped jvmti | Dropped trace | Skipped WC | AGCT fail | Unwind fail |
|---|---|---|---|---|---|---|---|
| akka-uct | 21 | ✅ / ✅ | ✅ / ✅ | ✅ / 2 | ✅ / 1828 | ✅ / ✅ | ✅ / ✅ |
| akka-uct | 25 | ✅ / ✅ | ✅ / ✅ | ✅ / 4 | ✅ / 2210 | ✅ / ✅ | ✅ / ✅ |
| finagle-chirper | 21 | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ |
| finagle-chirper | 25 | ✅ / ✅ | ✅ / ✅ | 3 / ✅ | 8521 / 8422 | ✅ / ✅ | ✅ / ✅ |
| fj-kmeans | 21 | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ |
| fj-kmeans | 25 | ✅ / ✅ | ✅ / ✅ | 6 / 2 | 1250 / 1277 | ✅ / ✅ | ✅ / ✅ |
| future-genetic | 21 | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ |
| future-genetic | 25 | ✅ / ✅ | ✅ / ✅ | 2 / ✅ | 2907 / 2835 | ✅ / ✅ | ✅ / ✅ |
| naive-bayes | 21 | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ |
| naive-bayes | 25 | ✅ / ✅ | ✅ / ✅ | 2 / 3 | 3459 / 3498 | ✅ / ✅ | ✅ / ✅ |
| reactors | 21 | ✅ / ✅ | ✅ / ✅ | 3 / ✅ | 1680 / 1603 | ✅ / ✅ | ✅ / ✅ |
| reactors | 25 | ✅ / ✅ | ✅ / ✅ | 1 / ✅ | 1749 / 1876 | ✅ / ✅ | ✅ / ✅ |
Reliability & Chaos Results❌ 1 failure(s) detected Pipeline: https://gitlab.ddbuild.io/DataDog/java-profiler/-/pipelines/124847295 ❌ chaos: profiler jemalloc amd64 21 0 3 temXchaos |
|
@zhengyu123 ping - do you want to finish this or it's to be closed? |
@jbachorik On my list, let me finish PR 639. |
Benchmark Results (commit 15dbbf7)Pipeline: https://gitlab.ddbuild.io/DataDog/apm-reliability/benchmarking-platform/-/pipelines/124031962 Commit:
|
| Benchmark | JDK | Latest | Dev | Δ (dev vs latest) | Issues L/D |
|---|---|---|---|---|---|
| akka-uct | 21 | ✅ 10295 ms (21 iters) | ✅ 10329 ms (21 iters) | ≈ +0.3% (±11.1%) | — / — |
| akka-uct | 25 | ✅ 8954 ms (24 iters) | ✅ 8911 ms (24 iters) | ≈ -0.5% (±11.1%) | — / — |
| finagle-chirper | 21 | ✅ 6000 ms (33 iters) | ✅ 5947 ms (33 iters) | ≈ -0.9% (±25.3%) | |
| finagle-chirper | 25 | ✅ 5513 ms (36 iters) | ✅ 5545 ms (36 iters) | ≈ +0.6% (±23.9%) | |
| fj-kmeans | 21 | ✅ 2748 ms (68 iters) | ✅ 2703 ms (70 iters) | ≈ -1.6% (±2.7%) | — / — |
| fj-kmeans | 25 | ✅ 2846 ms (66 iters) | ✅ 2759 ms (68 iters) | 🟢 -3.1% | — / — |
| future-genetic | 21 | ✅ 2112 ms (88 iters) | ✅ 2014 ms (93 iters) | 🟢 -4.6% | — / — |
| future-genetic | 25 | ✅ 1976 ms (94 iters) | ✅ 2113 ms (88 iters) | 🔴 +6.9% | — / — |
| naive-bayes | 21 | ✅ 1252 ms (136 iters) | ✅ 1290 ms (133 iters) | ≈ +3% (±33.4%) | — / — |
| naive-bayes | 25 | ✅ 1024 ms (167 iters) | ✅ 1014 ms (168 iters) | ≈ -1% (±31.7%) | — / — |
| reactors | 21 | ✅ 17302 ms (15 iters) | ✅ 16391 ms (15 iters) | ≈ -5.3% (±6.4%) | — / — |
| reactors | 25 | ✅ 18436 ms (15 iters) | ✅ 18510 ms (15 iters) | ≈ +0.4% (±6.3%) | — / — |
Internal counter details (ddprof)
ddprof internal counters, latest / dev (✅ = 0, · = unavailable):
| Benchmark | JDK | Dropped rec | Dropped jvmti | Dropped trace | Skipped WC | AGCT fail | Unwind fail |
|---|---|---|---|---|---|---|---|
| akka-uct | 21 | ✅ / ✅ | ✅ / ✅ | 2 / 1 | 1903 / 1893 | ✅ / ✅ | ✅ / ✅ |
| akka-uct | 25 | ✅ / ✅ | ✅ / ✅ | ✅ / 2 | 2159 / 2309 | ✅ / ✅ | ✅ / ✅ |
| finagle-chirper | 21 | ✅ / ✅ | ✅ / ✅ | 4 / 6 | 9111 / 8785 | ✅ / ✅ | ✅ / ✅ |
| finagle-chirper | 25 | ✅ / ✅ | ✅ / ✅ | 2 / ✅ | 8496 / 8523 | ✅ / ✅ | ✅ / ✅ |
| fj-kmeans | 21 | ✅ / ✅ | ✅ / ✅ | ✅ / 1 | 1250 / 1290 | ✅ / ✅ | ✅ / ✅ |
| fj-kmeans | 25 | ✅ / ✅ | ✅ / ✅ | 4 / ✅ | 1278 / 1281 | ✅ / ✅ | ✅ / ✅ |
| future-genetic | 21 | ✅ / ✅ | ✅ / ✅ | 1 / 3 | 2942 / 2978 | ✅ / ✅ | ✅ / ✅ |
| future-genetic | 25 | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | 2820 / 2987 | ✅ / ✅ | ✅ / ✅ |
| naive-bayes | 21 | ✅ / ✅ | ✅ / ✅ | 6 / 7 | 3474 / 3544 | ✅ / ✅ | ✅ / ✅ |
| naive-bayes | 25 | ✅ / ✅ | ✅ / ✅ | 4 / 5 | 3489 / 3441 | ✅ / ✅ | ✅ / ✅ |
| reactors | 21 | ✅ / ✅ | ✅ / ✅ | ✅ / 1 | 1735 / 1718 | ✅ / ✅ | ✅ / ✅ |
| reactors | 25 | ✅ / ✅ | ✅ / ✅ | 1 / 2 | 1874 / 1939 | ✅ / ✅ | ✅ / ✅ |
Benchmark Results (commit 799203b)Pipeline: https://gitlab.ddbuild.io/DataDog/apm-reliability/benchmarking-platform/-/pipelines/124803428 Commit:
|
| Benchmark | JDK | Latest | Dev | Δ (dev vs latest) | Issues L/D |
|---|---|---|---|---|---|
| akka-uct | 21 | ✅ 10159 ms (21 iters) | ✅ 10277 ms (21 iters) | ≈ +1.2% (±11%) | — / — |
| akka-uct | 25 | ✅ 8864 ms (24 iters) | ✅ 8898 ms (24 iters) | ≈ +0.4% (±10.1%) | — / — |
| finagle-chirper | 21 | ✅ 5977 ms (33 iters) | ✅ 5984 ms (33 iters) | ≈ +0.1% (±24.9%) | |
| finagle-chirper | 25 | ✅ 5482 ms (36 iters) | ✅ 5507 ms (36 iters) | ≈ +0.5% (±24.5%) | |
| fj-kmeans | 21 | ✅ 2733 ms (68 iters) | ✅ 2840 ms (66 iters) | 🔴 +3.9% | — / — |
| fj-kmeans | 25 | ✅ 2814 ms (66 iters) | ✅ 2835 ms (66 iters) | ≈ +0.7% (±2.7%) | — / — |
| future-genetic | 21 | ✅ 2011 ms (92 iters) | ✅ 2063 ms (90 iters) | ≈ +2.6% (±2.6%) | — / — |
| future-genetic | 25 | ✅ 2103 ms (88 iters) | ✅ 1955 ms (95 iters) | 🟢 -7% | — / — |
| naive-bayes | 21 | ✅ 1239 ms (138 iters) | ✅ 1253 ms (136 iters) | ≈ +1.1% (±32.8%) | — / — |
| naive-bayes | 25 | ✅ 1008 ms (169 iters) | ✅ 1016 ms (169 iters) | ≈ +0.8% (±31.8%) | — / — |
| reactors | 21 | ✅ 16169 ms (15 iters) | ✅ 16513 ms (15 iters) | ≈ +2.1% (±5.9%) | — / — |
| reactors | 25 | ✅ 18589 ms (15 iters) | ✅ 18434 ms (15 iters) | ≈ -0.8% (±3.4%) | — / — |
Internal counter details (ddprof)
ddprof internal counters, latest / dev (✅ = 0, · = unavailable):
| Benchmark | JDK | Dropped rec | Dropped jvmti | Dropped trace | Skipped WC | AGCT fail | Unwind fail |
|---|---|---|---|---|---|---|---|
| akka-uct | 21 | ✅ / ✅ | ✅ / ✅ | 1 / 1 | 2014 / 1985 | ✅ / ✅ | ✅ / ✅ |
| akka-uct | 25 | ✅ / ✅ | ✅ / ✅ | 2 / 1 | 2086 / 2159 | ✅ / ✅ | ✅ / ✅ |
| finagle-chirper | 21 | ✅ / ✅ | ✅ / ✅ | 2 / 6 | 8614 / 8159 | ✅ / ✅ | ✅ / ✅ |
| finagle-chirper | 25 | ✅ / ✅ | ✅ / ✅ | 3 / 1 | 8543 / 8597 | ✅ / ✅ | ✅ / ✅ |
| fj-kmeans | 21 | ✅ / ✅ | ✅ / ✅ | 2 / 2 | 1270 / 1262 | ✅ / ✅ | ✅ / ✅ |
| fj-kmeans | 25 | ✅ / ✅ | ✅ / ✅ | 2 / 1 | 1277 / 1315 | ✅ / ✅ | ✅ / ✅ |
| future-genetic | 21 | ✅ / ✅ | ✅ / ✅ | 2 / 2 | 2920 / 3055 | ✅ / ✅ | ✅ / ✅ |
| future-genetic | 25 | ✅ / ✅ | ✅ / ✅ | 2 / 4 | 2938 / 2894 | ✅ / ✅ | ✅ / ✅ |
| naive-bayes | 21 | ✅ / ✅ | ✅ / ✅ | 4 / 3 | 3538 / 3529 | ✅ / ✅ | ✅ / ✅ |
| naive-bayes | 25 | ✅ / ✅ | ✅ / ✅ | 4 / 8 | 3510 / 3480 | ✅ / ✅ | ✅ / ✅ |
| reactors | 21 | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | 1560 / 1658 | ✅ / ✅ | ✅ / ✅ |
| reactors | 25 | ✅ / ✅ | ✅ / ✅ | 1 / ✅ | 1904 / 1859 | ✅ / ✅ | ✅ / ✅ |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 50547f55bb
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| testConfig.environmentVariables.forEach { (key, value) -> | ||
| if (key == "LD_LIBRARY_PATH") { | ||
| project.logger.info("Removing LD_LIBRARY_PATH to prevent cross-JDK library conflicts (was: $value)") | ||
| return@forEach | ||
| } |
There was a problem hiding this comment.
Remove inherited LD_LIBRARY_PATH from Exec tests
When the normal musl Exec test path runs with LD_LIBRARY_PATH already set in the CI shell, this loop only filters values coming from testConfig.environmentVariables; Gradle Exec tasks inherit the current process environment by default, so the ambient LD_LIBRARY_PATH remains in execTask.environment. The previous doFirst removed the inherited value as well, and without that removal $JAVA_TEST_HOME/bin/java can again load the wrong libjli.so, which is the cross-JDK failure this block is meant to prevent.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Right, that has been introduced by the change that I have requested. I think the previous version was actually more-correct. Sorry for that noise.
| // Profiler options from -Pprofiler.options property | ||
| val profilerOptions = project.findProperty("profiler.options") as String? | ||
| if (profilerOptions != null) { | ||
| allArgs.add("-Dddprof.test.options=$profilerOptions") |
There was a problem hiding this comment.
Forward profiler options to spawned test JVMs
This only adds ddprof.test.options to the ProfilerTestRunner JVM. Fresh evidence beyond the earlier direct execute cases: tests such as JavaProfilerTest.vmStackwalkerCrashRecoveryTest go through AbstractProcessProfilerTest.launch, which builds a new java command from explicit jvmArgs and a hard-coded profiler command, so testProcessDebug -Pprofiler.options=fjmethodid=false -Ptests=com.datadoghq.profiler.JavaProfilerTest.vmStackwalkerCrashRecoveryTest still profiles the child process without the requested override. Please propagate the property or merge the options before launching ExternalLauncher.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
AFAICT, that is a true concern which should be addressed?
Benchmark Results (commit 50547f5)Pipeline: https://gitlab.ddbuild.io/DataDog/apm-reliability/benchmarking-platform/-/pipelines/124847306 Commit:
|
| Benchmark | JDK | Latest | Dev | Δ (dev vs latest) | Issues L/D |
|---|---|---|---|---|---|
| akka-uct | 21 | ✅ 10231 ms (21 iters) | ✅ 10165 ms (21 iters) | ≈ -0.6% (±11.4%) | — / — |
| akka-uct | 25 | ✅ 8797 ms (24 iters) | ✅ 8773 ms (24 iters) | ≈ -0.3% (±10%) | — / — |
| finagle-chirper | 21 | ✅ 5956 ms (33 iters) | ✅ 5979 ms (33 iters) | ≈ +0.4% (±25.1%) | |
| finagle-chirper | 25 | ✅ 5517 ms (36 iters) | ✅ 5476 ms (36 iters) | ≈ -0.7% (±24.4%) | |
| fj-kmeans | 21 | ✅ 2653 ms (71 iters) | ✅ 2706 ms (70 iters) | ≈ +2% (±2.6%) | — / — |
| fj-kmeans | 25 | ✅ 2829 ms (66 iters) | ✅ 2816 ms (66 iters) | ≈ -0.5% (±2.6%) | — / — |
| future-genetic | 21 | ✅ 2171 ms (86 iters) | ✅ 2090 ms (88 iters) | 🟢 -3.7% | — / — |
| naive-bayes | 21 | ✅ 1246 ms (137 iters) | ✅ 1275 ms (135 iters) | ≈ +2.3% (±33.3%) | — / — |
| naive-bayes | 25 | ✅ 1014 ms (169 iters) | ✅ 1014 ms (169 iters) | ≈ 0% (±31.8%) | — / — |
| reactors | 21 | ✅ 16783 ms (15 iters) | ✅ 16332 ms (15 iters) | ≈ -2.7% (±7.1%) | — / — |
Internal counter details (ddprof)
ddprof internal counters, latest / dev (✅ = 0, · = unavailable):
| Benchmark | JDK | Dropped rec | Dropped jvmti | Dropped trace | Skipped WC | AGCT fail | Unwind fail |
|---|---|---|---|---|---|---|---|
| akka-uct | 21 | ✅ / ✅ | ✅ / ✅ | ✅ / 1 | 1907 / 1976 | ✅ / ✅ | ✅ / ✅ |
| akka-uct | 25 | ✅ / ✅ | ✅ / ✅ | 2 / 2 | 2005 / 2239 | ✅ / ✅ | ✅ / ✅ |
| finagle-chirper | 21 | ✅ / ✅ | ✅ / ✅ | 3 / 2 | 8644 / 8741 | ✅ / ✅ | ✅ / ✅ |
| finagle-chirper | 25 | ✅ / ✅ | ✅ / ✅ | 2 / 2 | 8797 / 8636 | ✅ / ✅ | ✅ / ✅ |
| fj-kmeans | 21 | ✅ / ✅ | ✅ / ✅ | 1 / 4 | 1240 / 1315 | ✅ / ✅ | ✅ / ✅ |
| fj-kmeans | 25 | ✅ / ✅ | ✅ / ✅ | 4 / ✅ | 1283 / 1269 | ✅ / ✅ | ✅ / ✅ |
| future-genetic | 21 | ✅ / ✅ | ✅ / ✅ | 2 / 2 | 3041 / 2955 | ✅ / ✅ | ✅ / ✅ |
| naive-bayes | 21 | ✅ / ✅ | ✅ / ✅ | 4 / 7 | 3495 / 3578 | ✅ / ✅ | ✅ / ✅ |
| naive-bayes | 25 | ✅ / ✅ | ✅ / ✅ | 7 / 7 | 3475 / 3513 | ✅ / ✅ | ✅ / ✅ |
| reactors | 21 | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ | ✅ / ✅ |
What does this PR do?:
This PR adds a new task for testing, that accepts user options.
Motivation:
The task is created for testing new feature that avoids preloading all jmethod ids. By default, the feature is disabled and has to be enabled via
fjmethodid=falseargument, which is not possible with currenttestdebug/releasetasks.Additional Notes:
How to test the change?:
Run
./gradlew Pprofiler.options=fjmethodid=false testProcessDebug,fjmethodid=falseis merged into command line that print out by tests.For example:
For Datadog employees:
credentials of any kind, I've requested a review from
@DataDog/security-design-and-guidance.Unsure? Have a question? Request a review!