Refactor Loader.go, in preparation for adding new trace type.#740
Merged
leokondrashov merged 8 commits intovhive-serverless:mainfrom Apr 15, 2026
Merged
Refactor Loader.go, in preparation for adding new trace type.#740leokondrashov merged 8 commits intovhive-serverless:mainfrom
leokondrashov merged 8 commits intovhive-serverless:mainfrom
Conversation
Collaborator
Author
|
Previous 2 commits added your pointers to the PR |
Contributor
leokondrashov
left a comment
There was a problem hiding this comment.
Quite good now, please fix minor comments and ready to merge
leokondrashov
approved these changes
Apr 14, 2026
Contributor
leokondrashov
left a comment
There was a problem hiding this comment.
Looks good. Need to rebase on the new main, shouldn't be a problem since the update was only with the k8s setup, without touching the loader code
Deprecates GenerateSpecification(), ReadOrWriteFileSpecification() outputIATsToFile() Replaced with GenerateAzure2019Specification(), ReadOrWriteSpecificationToFile() Signed-off-by: Bryan Wong <wongwenpingbryan@gmail.com>
Requires each inputType's generator to return a standardised []*common.Function. Vswarn and Dirigent settings left to generator to handle. Signed-off-by: Bryan Wong <wongwenpingbryan@gmail.com>
Decomponsed RPS function generation (CreateRPSFunctions()) into function creation, and adding dirigent metadata to function. Extract Dirigent out of GenerateFunction(). Own dedicated section in runMode(). Signed-off-by: Bryan Wong wongwenpingbryan@gmail.com
Signed-off-by: Bryan Wong wongwenpingbryan@gmail.com
Update trace_driver test to work with updated function_specification generation. Removed unused, deprecated functions. Added back "FailureConfiguration:" property which was wrongly removed. Signed-off-by: Bryan Wong wongwenpingbryan@gmail.com
For functions: generator.GenerateAzure2019Specification(), generator.AppendDirigentMetadata(). Fixed function references, and to expect []*function to be updated when passed to func. Signed-off-by: Bryan Wong wongwenpingbryan@gmail.com
Remove shiftIAT and IATDistribution from loader configuration. Updated driver_tests to not reference the loader struct, reference the shiftIAT and IATDistribution directly. Filled up missing fields for loader creation in RunMode(). Signed-off-by: Bryan Wong wongwenpingbryan@gmail.com
Signed-off-by: Bryan Wong wongwenpingbryan@gmail.com
Collaborator
Author
|
Yeap, have rebased on new main |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Refactored Loader.
Ensure more clear separation of function parsing/generation, dirigent reading, driver running.
Implementation Notes ⚒️
Added traceInputType variable classification
Combined runRPS() and runTrace() into singular runMode()
Driver should use []*common.function directly, extracted function generation out of driver.
Driver should not handle function read/write to file, extract out of driver.
Dirigent metadata adding extracted out of function generation, takes a dedicated section of runMode()
RPS function generation rewritten to extract dirigent metadata adding out.
External Dependencies 🍀
N/A
Breaking API Changes⚠️
trace_driver_test had to be updated to use new function specification generation method.
driver.GenerateSpecification() => GenerateAzure2019Specification()