j1wonpark opened a new pull request, #4079:
URL: https://github.com/apache/amoro/pull/4079
## Why are the changes needed?
`DanglingDeleteFilesCleaningExecutor`와 `SnapshotsExpiringExecutor`의 실행
주기(interval)가 각각 24시간, 1시간으로 하드코딩되어 있어 운영 환경에서 조정할 수 없었습니다.
동일한 역할의 다른 executor들(`OrphanFilesCleaningExecutor`, `DataExpiringExecutor`,
`TagsAutoCreatingExecutor`)은 이미 `ConfigOption<Duration>`으로 interval을 설정할 수
있으므로, 일관성을 위해 나머지 두 executor에도 동일한 패턴을 적용합니다.
## Brief change log
- `AmoroManagementConf`: `expire-snapshots.interval` (default 1h),
`clean-dangling-delete-files.interval` (default 1d) `ConfigOption<Duration>` 추가
- `SnapshotsExpiringExecutor`: 하드코딩 `INTERVAL` 상수를 `Duration interval` 필드로
교체, 생성자에서 주입받도록 변경
- `DanglingDeleteFilesCleaningExecutor`: 동일하게 `Duration interval` 필드로 교체,
생성자에서 주입받도록 변경
- `InlineTableExecutors`: 두 executor 생성 시 설정값 전달
- `docs/configuration/ams-config.md`: `ConfigurationsTest`로 자동 갱신
## How was this patch tested?
- [x] Add some test cases that check the changes thoroughly including
negative and positive cases if possible
- `TestConfigurableIntervalExecutors`: 기본값/커스텀 interval 주입 및
`shouldExecute` 경계값 테스트 (6개 케이스)
- [x] Run test locally before making a pull request
- `ConfigurationsTest` 통과 확인
- `TestConfigurableIntervalExecutors` 통과 확인
- `mvnw clean compile -pl amoro-ams -am -DskipTests` 빌드 성공 확인
## Documentation
- Does this pull request introduce a new feature? yes
- If yes, how is the feature documented? docs
--
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]