-
Notifications
You must be signed in to change notification settings - Fork 25
CNTRLPLANE-1316: set up openshift-tests-extension for openshift-etcd and add a sanity test #345
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
base: openshift-4.21
Are you sure you want to change the base?
Conversation
Complete backport of migration to OWNERS file.
Reference: etcd-io#18419 Signed-off-by: Chun-Hung Tseng <[email protected]>
[release-3.5] go version bump from 1.21.12 to 1.21.13
Backports commit: #5a02298ad5a947214ba02655b0a93ac01d4c178a Signed-off-by: James Blair <[email protected]>
[3.5] Backport github/workflows: set read-only default permissions to approve workflow
…beats Signed-off-by: Benjamin Wang <[email protected]>
…14_3.5 [3.5] Skip leadership check if the etcd instance is active processing heartbeats
Reference: - etcd-io#18443 Signed-off-by: Chun-Hung Tseng <[email protected]>
…ster Signed-off-by: Benjamin Wang <[email protected]>
[3.5] test: extend leaseRevoke and leaseRenew test to support 5 members cluster
[release-3.5] Bump go toolchain to 1.22.6
The goal is to reproduce a DELETE event being dropped in a watch after a compaction occurs on the revision where the deletion took place. In order to reproduce this, we perform the following sequence (steps for reproduction thanks to @ahrtr): - PUT k v2 (assume returned revision = r2) - PUT k v3 (assume returned revision = r3) - PUT k v4 (assume returned revision = r4) - DELETE k (assume returned revision = r5) - PUT k v6 (assume returned revision = r6) - COMPACT r5 - WATCH rev=r5 We should get the DELETE event (r5) followed by the PUT event (r6). However, currently we only get the PUT event with returned revision of r6 (key=k, val=v6). Signed-off-by: Madhav Jivrajani <[email protected]> (cherry picked from commit ebf2cac) Signed-off-by: Wei Fu <[email protected]>
The Go runtime uses runtime Finalizer to delete cert [[1]]. The
interestingGoroutines is able to collect stack like,
```plain
leak.go:103: Found leaked goroutined BEFORE test appears to have leaked :
sync.(*Map).LoadAndDelete(0xc00031e180, {0xe07320, 0xc00009fde0})
/usr/local/go/src/sync/map.go:272 +0x192
sync.(*Map).Delete(...)
/usr/local/go/src/sync/map.go:297
crypto/tls.(*certCache).evict(...)
/usr/local/go/src/crypto/tls/cache.go:73
crypto/tls.(*certCache).active.func1(0x0?)
/usr/local/go/src/crypto/tls/cache.go:65 +0x67
```
It's caused by GC instead of leaky goroutine. interestingGoroutines
should skip it.
Backport of etcd-io#18287
[1]: https://github.com/golang/go/blob/8e1fdea8316d840fd07e9d6e026048e53290948b/src/crypto/tls/cache.go#L63
Signed-off-by: Wei Fu <[email protected]>
Backport of etcd-io#18321 Signed-off-by: Wei Fu <[email protected]>
[3.5] client/pkg/testutil: update interestingGoroutines
[3.5] tests/e2e: add e2e test to reproduce issue 18089
[3.5] mvcc/*_test.go: should not use duplicate revision.Main for one key
Signed-off-by: Wei Fu <[email protected]> (cherry picked from commit ee33652) Signed-off-by: Wei Fu <[email protected]>
Before this patch, the tombstone can be deleted if its revision is equal compacted revision. It causes that the watch subscriber won't get this DELETE event. Based on Compact API[1], we should keep tombstone revision if it's not less than the compaction revision. > CompactionRequest compacts the key-value store up to a given revision. > All superseded keys with a revision less than the compaction revision > will be removed. [1]: https://etcd.io/docs/latest/dev-guide/api_reference_v3/ Signed-off-by: Wei Fu <[email protected]> (cherry picked from commit bbdc941) Signed-off-by: Wei Fu <[email protected]>
Signed-off-by: Wei Fu <[email protected]> (cherry picked from commit 6f93af8) Signed-off-by: Wei Fu <[email protected]>
[3.5] tests/e2e: add test cases related to HashKV
[3.5] *: keep tombstone if revision == compactAtRev
Signed-off-by: akshaym-3255 <[email protected]> bump bbolt to 1.3.11 for 3.5
[3.5] Bump bbolt to 1.3.11
Signed-off-by: Marek Siarkowicz <[email protected]>
This is a backporting cherry-pick of the following commits: - add flagsline Signed-off-by: Jalin Wang <[email protected]> - etcdserver: rename defaultCompactionSleepInterval var (etcd-io#18495) etcdserver: rename `minimumBatchInterval` to `defaultCompactionSleepInterval` and `defaultCompactBatchLimit` to `defaultCompactionBatchLimit` Signed-off-by: Jalin Wang <[email protected]> (cherry picked from commit 2c53be7) - test: add CompactionSleepInterval in FakeStore's config After setting the ComparionSleepInterval, we can use time.Ticker instead of time.After to optimize the scheduleComparison(), otherwise it will fail in the 'TestStoreCompact(t)' test. Signed-off-by: guozhao <[email protected]> (cherry picked from commit fab8474) - add sleep interval (cherry picked from commit 184b0e5) Signed-off-by: Jalin Wang <[email protected]>
[release-3.5] Fix passing default grpc call options in Kubernetes client
[3.5] Introduce the CompactionSleepInterval flag
cluster-restore needs to calculate and parse json files, thus adding jq into the release image for etcd now. Signed-off-by: Thomas Jungblut <[email protected]>
DOWNSTREAM: <carry>: ETCD-653: add jq to the etcd image
|
@sandeepknd: This pull request references CNTRLPLANE-1316 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target the "4.21.0" version, but no target version was set. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
8a391b8 to
9ac8831
Compare
|
/hold cancel |
|
/test e2e-aws-ovn-serial |
2 similar comments
|
/test e2e-aws-ovn-serial |
|
/test e2e-aws-ovn-serial |
9ac8831 to
e4f7dd2
Compare
|
/test e2e-aws-ovn |
|
/lgtm |
|
/test e2e-aws-ovn-serial |
This commit adds the OpenShift Tests Extension (OTE) framework for etcd, including the etcd-tests-ext binary and all required vendor dependencies. Changes include: - New etcd-tests-ext command in cmd/etcd-tests-ext/ - Extended test framework in tests/extended/ - Updated Makefile with OTE build targets - Added vendor dependencies for test framework - Updated .gitignore and go.mod/go.sum
e4f7dd2 to
d1d5a87
Compare
|
/test e2e-aws-ovn-serial |
|
/test okd-scos-e2e-aws-ovn |
|
@sandeepknd: The following tests failed, say
Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
|
/lgtm |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: dusk125, gangwgr, sandeepknd The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
PR needs rebase. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
239c469 to
806f690
Compare
As part of the https://issues.redhat.com/browse/CNTRLPLANE-1221 and sub task https://issues.redhat.com/browse/CNTRLPLANE-1316, raised this PR which introduces a binary and supporting structure to enable the execution of OpenShift etcd tests using the Open Test Environment (OTE).
Changes:
Add cmd/etcd-tests-ext/ with main.go
Add test/extended/ directory with comprehensive README.md and sanity test
Update Makefile with flexible OTE build targets and helper commands
Update go.mod with required dependencies for ginkgo and openshift-tests-extension
Add vendor dependencies for new OTE framework
Test suites:
openshift/etcd/conformance/parallel
openshift/etcd/conformance/serial
openshift/etcd/optional/slow
openshift/etcd/all
Please find the OTE test results.