FANNG1 opened a new pull request, #10001:
URL: https://github.com/apache/gravitino/pull/10001
## What changes were proposed in this pull request?
- Add monitor skeleton APIs under `api/monitor`, including
evaluator/provider/callback
contracts and evaluation result model.
- Add `Monitor` orchestration skeleton to evaluate table and related job
metrics around an
action timestamp.
- Add monitor-related config keys and SPI loaders in `OptimizerConfig`,
`ProviderUtils`,
and `InstanceLoaderUtils`.
- Add unit tests and test SPI registrations for monitor
provider/evaluator/callback
loading and monitor execution flow.
- Keep scope focused on skeleton only: no `OptimizerCmd` monitor CLI/service
changes and
no monitor service implementation classes.
## Why are the changes needed?
- This PR introduces the monitor abstraction layer and minimal execution
skeleton so
follow-up PRs can add concrete monitor implementations incrementally.
## Does this PR introduce any user-facing change?
- No.
## How was this patch tested?
- `./gradlew :maintenance:optimizer:spotlessApply`
- `./gradlew :maintenance:optimizer:test -PskipITs`
<!--
1. Title: [#<issue>] <type>(<scope>): <subject>
Examples:
- "[#123] feat(operator): support xxx"
- "[#233] fix: check null before access result in xxx"
- "[MINOR] refactor: fix typo in variable name"
- "[MINOR] docs: fix typo in README"
- "[#255] test: fix flaky test NameOfTheTest"
Reference: https://www.conventionalcommits.org/en/v1.0.0/
2. If the PR is unfinished, please mark this PR as draft.
-->
### What changes were proposed in this pull request?
(Please outline the changes and how this PR fixes the issue.)
### Why are the changes needed?
(Please clarify why the changes are needed. For instance,
1. If you propose a new API, clarify the use case for a new API.
2. If you fix a bug, describe the bug.)
Fix: #(issue)
### Does this PR introduce _any_ user-facing change?
(Please list the user-facing changes introduced by your change, including
1. Change in user-facing APIs.
2. Addition or removal of property keys.)
### How was this patch tested?
(Please test your changes, and provide instructions on how to test it:
1. If you add a feature or fix a bug, add a test to cover your changes.
2. If you fix a flaky test, repeat it for many times to prove it works.)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]