adoptium / adoptium/aqa-test-tools
Enhance Design to Parse and Display Different Types of Perf Jobs (i.e. Java, Nodejs & Others)
- 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
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