Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Backport PR #2463 to release/v1.7 for Bugfix recreate benchmark job when operator reboot #2464

Conversation

vdaas-ci
Copy link
Collaborator

Description

I have fixed the benchmark-operator recreates BenchmarkJobResource following BenchmarkScenarioResource(VBJR) even though the applied VBJR status is Completed when an operator reboots.

I have changed the default CR status to Available and fixed the operator's reconciliation logic to resolve this issue.
The operator will create child resources only if CRD status is Available.

stateDiagram-v2
    [*] --> Available: Apply Scenario
    Available --> Healthy: Create Benchmark Job Resource
    Healthy --> Completed: If ALL benchmarkJobResource are completed
    Completed --> [*]
Loading

Related Issue

Versions

  • Go Version: 1.22.1
  • Docker Version: 20.10.8
  • Kubernetes Version: v1.29.2
  • NGT Version: 2.2

Checklist

Special notes for your reviewer

* 🐛 Fix recreate benchmark job already runnnig when operator rebooted

Signed-off-by: vankichi <kyukawa315@gmail.com>

* 🐛 Fix benchmarkJobReconcile status handling

Signed-off-by: vankichi <kyukawa315@gmail.com>

* ✅ Fix test

Signed-off-by: vankichi <kyukawa315@gmail.com>

* ♻️ Update k8s dir

Signed-off-by: vankichi <kyukawa315@gmail.com>

* ♻️ Fix

Signed-off-by: vankichi <kyukawa315@gmail.com>

---------

Signed-off-by: vankichi <kyukawa315@gmail.com>
Copy link

cloudflare-pages bot commented Mar 22, 2024

Deploying vald with  Cloudflare Pages  Cloudflare Pages

Latest commit: 96f8883
Status: ✅  Deploy successful!
Preview URL: https://d45d7633.vald.pages.dev
Branch Preview URL: https://backport-release-v1-7-bugfix-6qt4.vald.pages.dev

View logs

@vdaas-ci
Copy link
Collaborator Author

[CHATOPS:HELP] ChatOps commands.

  • 🙆‍♀️ /approve - approve
  • 🍱 /format - format codes and add licenses
  • /gen-test - generate test codes
  • 🏷️ /label - add labels
  • 🔚 2️⃣ 🔚 /label actions/e2e-deploy - run E2E deploy & integration test

Copy link

codecov bot commented Mar 22, 2024

Codecov Report

Attention: Patch coverage is 84.61538% with 4 lines in your changes are missing coverage. Please review.

❗ No coverage uploaded for pull request base (release/v1.7@51439a4). Click here to learn what that means.

Files Patch % Lines
pkg/tools/benchmark/operator/service/operator.go 84.61% 2 Missing and 2 partials ⚠️
Additional details and impacted files
@@               Coverage Diff               @@
##             release/v1.7    #2464   +/-   ##
===============================================
  Coverage                ?   18.90%           
===============================================
  Files                   ?      562           
  Lines                   ?    64595           
  Branches                ?        0           
===============================================
  Hits                    ?    12210           
  Misses                  ?    51591           
  Partials                ?      794           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@ykadowak ykadowak merged commit 1869f98 into release/v1.7 Mar 22, 2024
58 checks passed
@ykadowak ykadowak deleted the backport/release/v1.7/bugfix/pkg/recreate-benchmark-job-when-operator-reboot branch March 22, 2024 04:39
kpango added a commit that referenced this pull request May 8, 2024
fix: git add chart directory for release (#2356) (#2357)
[patch] release v1.7.11 (#2358)
:bookmark: :robot: Release v1.7.11 (#2360)
Change docker scan timeout longer (#2363) (#2364)
refactor code using golangci-lint (#2362) (#2365)
Create SECURITY.md (#2367) (#2368)
add commit hash build image (#2359) (#2371)
update docker build target platform selection rules (#2370) (#2374)
Make agent export index metrics to Pod k8s resource (#2319) (#2372)
backport ci deps others (#2386)
Update workflow to release readreplica chart (#2383) (#2387)
:green_heart: :recycle: Add Con-Bench helm chart to the Vald charts (#2388) (#2389)
Delete unnecessary code for mirror (#2366) (#2391)
change JP logo to EN logo (#2369) (#2392)
Add rotate-all option to rotator (#2305) (#2393)
fix: build error of internal kvs test (#2396) (#2398)
Resolve kvs already closed before last saving (#2390) (#2394)
:robot: Update license headers / Format Go codes and YAML files (#2397) (#2400)
create continous benchmark doc (#2352) (#2395)
fix: disable protobuf dispatch for client (#2401) (#2403)
update deps (#2404) (#2405)
[patch] release v1.7.12 (#2406)
:bookmark: :robot: Release v1.7.12 (#2408)
:pencil: Fix typo of file name (#2413) (#2415)
Fix agent-faiss build failed (#2418) (#2419)
Add tests for index information export (#2412) (#2414)
Fix the logic to determine docker image (#2410) (#2420)
Update build rule for nightly image (#2421) (#2422)
Fix output settings to determine-docker-image-tag action and release branch build tag name (#2423) (#2425)
Add `index-operator` template implementation (#2375) (#2424)
fix: typo of execution rule (#2426) (#2427)
Backport Flush API (#2434)
update deps & add validation for Flush API when agent is Read Only (#2433) (#2436)
docs: add hrichiksite as a contributor for doc (#2441) (#2442)
fix: bugfix version update for docker build (#2445) (#2446)
Fix index job logic to pass DNS A record (#2438) (#2448)
Added snapshot timestamp annotations to read replica agent (#2428) (#2443)
Fix operator-sdk version (#2447) (#2449)
add file name lint (#2417) (#2450)
fix: add extra option for ci-container build (#2451) (#2452)
Add base of benchmark operator dashboard (#2430) (#2453)
Implement index operator logic for read replica rotation (#2444) (#2456)
add inner product distance type for ngt (#2454) (#2458)
Fix e2e for read replica and add e2e for index operator (#2455) (#2459)
Add unit tests for index operator (#2460) (#2461)
Bugfix recreate benchmark job when operator reboot (#2463) (#2464)
Refactor k8s types (#2462) (#2465)
:robot: Automatically update PULL_REQUEST_TEMPLATE and ISSUE_TEMPLATE (#2457) (#2469)
Fix workflow trigger for backport pr creation (#2471) (#2472)
Automatically add backport main label for release-pr (#2473) (#2475)
update deps (#2468) (#2476)
Implement client metrics interceptor for continuous benchmark job (#2477) (#2480)
:chart_with_upwards_trend: Add client metrics panels for continuous benchmark job (#2481) (#2483)
Update continuous benchmark docs (#2485) (#2486)

Signed-off-by: kpango <kpango@vdaas.org>
kpango added a commit that referenced this pull request May 8, 2024
fix: git add chart directory for release (#2356) (#2357)
[patch] release v1.7.11 (#2358)
:bookmark: :robot: Release v1.7.11 (#2360)
Change docker scan timeout longer (#2363) (#2364)
refactor code using golangci-lint (#2362) (#2365)
Create SECURITY.md (#2367) (#2368)
add commit hash build image (#2359) (#2371)
update docker build target platform selection rules (#2370) (#2374)
Make agent export index metrics to Pod k8s resource (#2319) (#2372)
backport ci deps others (#2386)
Update workflow to release readreplica chart (#2383) (#2387)
:green_heart: :recycle: Add Con-Bench helm chart to the Vald charts (#2388) (#2389)
Delete unnecessary code for mirror (#2366) (#2391)
change JP logo to EN logo (#2369) (#2392)
Add rotate-all option to rotator (#2305) (#2393)
fix: build error of internal kvs test (#2396) (#2398)
Resolve kvs already closed before last saving (#2390) (#2394)
:robot: Update license headers / Format Go codes and YAML files (#2397) (#2400)
create continous benchmark doc (#2352) (#2395)
fix: disable protobuf dispatch for client (#2401) (#2403)
update deps (#2404) (#2405)
[patch] release v1.7.12 (#2406)
:bookmark: :robot: Release v1.7.12 (#2408)
:pencil: Fix typo of file name (#2413) (#2415)
Fix agent-faiss build failed (#2418) (#2419)
Add tests for index information export (#2412) (#2414)
Fix the logic to determine docker image (#2410) (#2420)
Update build rule for nightly image (#2421) (#2422)
Fix output settings to determine-docker-image-tag action and release branch build tag name (#2423) (#2425)
Add `index-operator` template implementation (#2375) (#2424)
fix: typo of execution rule (#2426) (#2427)
Backport Flush API (#2434)
update deps & add validation for Flush API when agent is Read Only (#2433) (#2436)
docs: add hrichiksite as a contributor for doc (#2441) (#2442)
fix: bugfix version update for docker build (#2445) (#2446)
Fix index job logic to pass DNS A record (#2438) (#2448)
Added snapshot timestamp annotations to read replica agent (#2428) (#2443)
Fix operator-sdk version (#2447) (#2449)
add file name lint (#2417) (#2450)
fix: add extra option for ci-container build (#2451) (#2452)
Add base of benchmark operator dashboard (#2430) (#2453)
Implement index operator logic for read replica rotation (#2444) (#2456)
add inner product distance type for ngt (#2454) (#2458)
Fix e2e for read replica and add e2e for index operator (#2455) (#2459)
Add unit tests for index operator (#2460) (#2461)
Bugfix recreate benchmark job when operator reboot (#2463) (#2464)
Refactor k8s types (#2462) (#2465)
:robot: Automatically update PULL_REQUEST_TEMPLATE and ISSUE_TEMPLATE (#2457) (#2469)
Fix workflow trigger for backport pr creation (#2471) (#2472)
Automatically add backport main label for release-pr (#2473) (#2475)
update deps (#2468) (#2476)
Implement client metrics interceptor for continuous benchmark job (#2477) (#2480)
:chart_with_upwards_trend: Add client metrics panels for continuous benchmark job (#2481) (#2483)
Update continuous benchmark docs (#2485) (#2486)

Signed-off-by: kpango <kpango@vdaas.org>
kpango added a commit that referenced this pull request May 8, 2024
fix: git add chart directory for release (#2356) (#2357)
[patch] release v1.7.11 (#2358)
:bookmark: :robot: Release v1.7.11 (#2360)
Change docker scan timeout longer (#2363) (#2364)
refactor code using golangci-lint (#2362) (#2365)
Create SECURITY.md (#2367) (#2368)
add commit hash build image (#2359) (#2371)
update docker build target platform selection rules (#2370) (#2374)
Make agent export index metrics to Pod k8s resource (#2319) (#2372)
backport ci deps others (#2386)
Update workflow to release readreplica chart (#2383) (#2387)
:green_heart: :recycle: Add Con-Bench helm chart to the Vald charts (#2388) (#2389)
Delete unnecessary code for mirror (#2366) (#2391)
change JP logo to EN logo (#2369) (#2392)
Add rotate-all option to rotator (#2305) (#2393)
fix: build error of internal kvs test (#2396) (#2398)
Resolve kvs already closed before last saving (#2390) (#2394)
:robot: Update license headers / Format Go codes and YAML files (#2397) (#2400)
create continous benchmark doc (#2352) (#2395)
fix: disable protobuf dispatch for client (#2401) (#2403)
update deps (#2404) (#2405)
[patch] release v1.7.12 (#2406)
:bookmark: :robot: Release v1.7.12 (#2408)
:pencil: Fix typo of file name (#2413) (#2415)
Fix agent-faiss build failed (#2418) (#2419)
Add tests for index information export (#2412) (#2414)
Fix the logic to determine docker image (#2410) (#2420)
Update build rule for nightly image (#2421) (#2422)
Fix output settings to determine-docker-image-tag action and release branch build tag name (#2423) (#2425)
Add `index-operator` template implementation (#2375) (#2424)
fix: typo of execution rule (#2426) (#2427)
Backport Flush API (#2434)
update deps & add validation for Flush API when agent is Read Only (#2433) (#2436)
docs: add hrichiksite as a contributor for doc (#2441) (#2442)
fix: bugfix version update for docker build (#2445) (#2446)
Fix index job logic to pass DNS A record (#2438) (#2448)
Added snapshot timestamp annotations to read replica agent (#2428) (#2443)
Fix operator-sdk version (#2447) (#2449)
add file name lint (#2417) (#2450)
fix: add extra option for ci-container build (#2451) (#2452)
Add base of benchmark operator dashboard (#2430) (#2453)
Implement index operator logic for read replica rotation (#2444) (#2456)
add inner product distance type for ngt (#2454) (#2458)
Fix e2e for read replica and add e2e for index operator (#2455) (#2459)
Add unit tests for index operator (#2460) (#2461)
Bugfix recreate benchmark job when operator reboot (#2463) (#2464)
Refactor k8s types (#2462) (#2465)
:robot: Automatically update PULL_REQUEST_TEMPLATE and ISSUE_TEMPLATE (#2457) (#2469)
Fix workflow trigger for backport pr creation (#2471) (#2472)
Automatically add backport main label for release-pr (#2473) (#2475)
update deps (#2468) (#2476)
Implement client metrics interceptor for continuous benchmark job (#2477) (#2480)
:chart_with_upwards_trend: Add client metrics panels for continuous benchmark job (#2481) (#2483)
Update continuous benchmark docs (#2485) (#2486)

Signed-off-by: kpango <kpango@vdaas.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants