adoptium / adoptium/aqa-test-tools

Enhance Design to Parse and Display Different Types of Perf Jobs (i.e. Java, Nodejs & Others)

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

Description

### Problem Description

I feel that our current style for handling different perf jobs (i.e. java, nodejs and others) can be improved. So far, we were mainly concerned about the performance of Java builds. Hence, we had `jdkDate` and `javaVersion` in the database.

In order to handle the performance of Nodejs builds, we are currently adding these new entries to database: `nodeRunDate` and `nodeVersion` in https://github.com/AdoptOpenJDK/openjdk-test-tools/pull/160. Adding more entries makes the code confusing and a bit redundant since we would be storing 4 entries even though only 2 would be used always. We don't care about the Nodejs version when we do java testing. Similarly, we don't care about java version when we do nodejs testing. Hence, it's not a good design to store all variables together: `jdkDate`, `javaVersion`, `nodeRunDate` and `nodeVersion`, something that might increase and make the code more confusing.

### Proposed Changes

Maybe we should add just one entry `perfType`, which could be set to `java`, `nodejs` or any other in future. We should update `jdkDate` and `javaVersion` to `productDate` and `productVersion` or something along those lines.

### Related Issues

https://github.com/AdoptOpenJDK/openjdk-test-tools/issues/119

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the existing Java-specific fields described here, the related issue #119, and pull request #160 for the Node.js additions. Define the data model and parsing/display changes needed to support Java, Node.js, and future performance job types without unrelated fields, then verify both existing and new job results.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, nodejs
Domain
backend, databases
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.