adoptium / adoptium/aqa-test-tools

Update PerfNext Delimiters for TRSS Benchmark Parser

Open
#168 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
Jupyter Notebook
Stars
33
Forks
97
Avg merge
7h 9m
Merged PRs (30d)
5

Description

### Problem Description

In order for TRSS to extract perf results from Adopt perf builds (https://github.com/AdoptOpenJDK/openjdk-test-tools/issues/136), we had to change the regexes in https://github.com/AdoptOpenJDK/openjdk-test-tools/pull/159 that benchmark parser uses to find different tests within a Jenkins build and extra relevant info such as benchmark name, variant and SDK resource.

### Proposed Changes

- We need to update the hard-coded strings in the snippet below so that Jenkins builds launched by PerfNext can be parsed by TRSS.

https://github.com/AdoptOpenJDK/openjdk-test-tools/blob/be9fbd0d28fb7a0b6a82e85aec4702bee42a9113/PerfNext/app/apis/BenchEngine/parser.js#L329-L345

- For benchmark test delimiter, we should conform to https://github.com/AdoptOpenJDK/openjdk-test-tools/blob/6454a706534e4a9b089e73fa3ac266746bf32d02/TestResultSummaryService/parsers/Test.js#L2

`Running test _`
Example: `Running test LibertyDayTrader3-9dev-4way-LargeThreadPool`

- For benchmark name and variant, see above. You can also refer to `getBenchmarkInfo()` in BenchmarkParser.js.

- For SDK resource, we should conform to `const sdkResourceRegex = /.*?SDK_RESOURCE\=(.*)[\r\n]/;`. We should use `releases`, `nightly`, `customized` or `upstream` depending on the build selection. PerfNext doesn't print this info, but it can be added if needed.

Contributor guide

Open the contributing guide

Research direction

Start with PerfNext/app/apis/BenchEngine/parser.js at lines 329-345, then compare the delimiter handling with TestResultSummaryService/parsers/Test.js and getBenchmarkInfo() in BenchmarkParser.js. Update the benchmark name, variant, and SDK resource parsing so PerfNext-launched Jenkins builds conform to the documented formats, including the listed SDK_RESOURCE values.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
backend, testing-qa
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.