-
Notifications
You must be signed in to change notification settings - Fork 40.1k
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
etcd3: use PrevKV to remove additional get #34246
Conversation
@@ -353,263 +353,273 @@ | |||
}, | |||
{ | |||
"ImportPath": "github.com/coreos/etcd/alarm", | |||
"Comment": "v3.0.10", | |||
"Rev": "546c0f7ed65523c24390f0f26c7e4af2232f52d2" | |||
"Comment": "v3.1.0-alpha.1-86-gb980ab0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Won't @wojtek-t need to bump their uber-container to test this?
Do not merge this. If this solves the problem, we will back port this feature to 3.0 release branch next week. |
} | ||
var prevVal []byte | ||
if len(prevResp.Kvs) > 0 { | ||
prevVal = prevResp.Kvs[0].Value |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
just for edification but if you said clientv3.WithRev(0) you would get the history of a key?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"0" will returns latest state.
/cc @smarterclayton fyi. |
@xiang90 @hongchaodeng - just to clarify, what I should do is to:
|
Yes. Plan matched. |
If the result is good, we will backport this feature back to etcd 3.0. |
@hongchaodeng @xiang90 - I did an experiment with this PR patched (and etcd in 3.1.0-alpha.1 version - I build the container: "gcr.io/google_containers/etcd:3.1.0-alpha.1" for this purpose) And the results are waaaaaaaay better - please take a look into this comment: So if you could backport this feature to 3.0.x next week it would be great !!! |
I'm reassigning it back to you. Once you build the new 3.0.x release, we should probably update this PR and then merge it, right? |
@wojtek-t |
Jenkins GKE smoke e2e failed for commit cfd8685a12e06e56e26b294dabffb469edc40eaa. Full PR test history. The magic incantation to run this job again is |
Jenkins GCI GKE smoke e2e failed for commit cfd8685a12e06e56e26b294dabffb469edc40eaa. Full PR test history. The magic incantation to run this job again is |
Running into this issue many times:
|
@k8s-bot gce e2e test this |
Jenkins GCE e2e failed for commit 2516ab0. Full PR test history. The magic incantation to run this job again is |
regarding godep: did you follow the EXACT instructions in /~https://github.com/kubernetes/kubernetes/blob/master/docs/devel/godep.md ? If so, please help me with instructions for the smallest repro I can make... |
@thockin |
@k8s-bot gce e2e test this, issue: #IGNORE (Failed to create firewall) |
@k8s-bot test this [submit-queue is verifying that this PR is safe to merge] |
Automatic merge from submit-queue |
@smarterclayton - this patch is high-priority. |
Automatic merge from submit-queue Avoid unnecessary decoding in etcd3 client Ref #33653 With the "Cacher" layer in Kubernetes, most of the watches processed by "pkg/storage/etcd3/watcher.go" have "filter = Everything()". That said, we generally don't need to decode previous value of the object (which is used only to get the value of filter of it), because we already know it will be true. This PR is basically fixing this problem. Should be merged after #34246
Removing label |
#31704-#32831-#32907-#33003-#33349-#31190-#33581-#34089-#34234-#32822-#33393-#34246-#34435-#32477-upstream-release-1.4 Automatic merge from submit-queue Automated cherry pick of #31189 #31704 #32831 #32907 #33003 #33349 #31190 #33581 #34089 #34234 #32822 #33393 #34246 #34435 #32477 upstream release 1.4 We are going to release etcd v3 in 1.4.x release. ``` Cherrypick etcd v3-related bug fixes to 1.4 branch ``` Those PRs include: - Updates of etcd Godeps - Update to pkg/storage/etcd directory - Two PR that were unnecessary to avoid conflicts: #31189 #31704 Automated cherry pick of #31189 #31704 #32831 #32907 #33003 #33349 #31190 #33581 #34089 #34234 #32822 #33393 #34246 #34435 #32477 @hongchaodeng @xiang90 @lavalamp @smarterclayton
Commit found in the "release-1.4" branch appears to be this PR. Removing the "cherrypick-candidate" label. If this is an error find help to get your PR picked. |
…ck-of-#31189-kubernetes#31704-kubernetes#32831-kubernetes#32907-kubernetes#33003-kubernetes#33349-kubernetes#31190-kubernetes#33581-kubernetes#34089-kubernetes#34234-kubernetes#32822-kubernetes#33393-kubernetes#34246-kubernetes#34435-kubernetes#32477-upstream-release-1.4 Automatic merge from submit-queue Automated cherry pick of kubernetes#31189 kubernetes#31704 kubernetes#32831 kubernetes#32907 kubernetes#33003 kubernetes#33349 kubernetes#31190 kubernetes#33581 kubernetes#34089 kubernetes#34234 kubernetes#32822 kubernetes#33393 kubernetes#34246 kubernetes#34435 kubernetes#32477 upstream release 1.4 We are going to release etcd v3 in 1.4.x release. ``` Cherrypick etcd v3-related bug fixes to 1.4 branch ``` Those PRs include: - Updates of etcd Godeps - Update to pkg/storage/etcd directory - Two PR that were unnecessary to avoid conflicts: kubernetes#31189 kubernetes#31704 Automated cherry pick of kubernetes#31189 kubernetes#31704 kubernetes#32831 kubernetes#32907 kubernetes#33003 kubernetes#33349 kubernetes#31190 kubernetes#33581 kubernetes#34089 kubernetes#34234 kubernetes#32822 kubernetes#33393 kubernetes#34246 kubernetes#34435 kubernetes#32477 @hongchaodeng @xiang90 @lavalamp @smarterclayton
ref: ##33653
We are trying to test using PrevKV feature and see if it improves performance.
In order to test this, we will need etcd v3.1 (alpha) image.
Blockers:
This change is