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

Consider merging 478ba2c (#8306) into release-3.2 #8406

Closed
zhaoyao opened this issue Aug 16, 2017 · 4 comments
Closed

Consider merging 478ba2c (#8306) into release-3.2 #8406

zhaoyao opened this issue Aug 16, 2017 · 4 comments

Comments

@zhaoyao
Copy link

zhaoyao commented Aug 16, 2017

Sometimes we got etcd error: rpc error: code = Unknown desc = auth: revision in header is old

#8306 fixes this issue in master which does not appear in release-3.2.

@heyitsanthony
Copy link
Contributor

@zhaoyao is there a simple way to reproduce this? That patch shouldn't have changed any error behavior.

@zhaoyao
Copy link
Author

zhaoyao commented Aug 16, 2017

Yes, i can always reproduce in my env. Below is steps.

  1. starting a etcd server in terminal 1:
    $ etcd

  2. add root user and enable auth in terminal 2:

$ export ETCDCTL_API=3
$ echo root | etcdctl user add root --interactive=false
$ etcdctl auth enable
  1. run gist in terminal 3

here is my output:

panic: rpc error: code = Unknown desc = auth: revision in header is old

goroutine 39 [running]:
main.test(0xc420098f20, 0xc42019e180, 0x1)
       ***/main.go:46 +0x815
created by main.main
        ***/main.go:67 +0x213
panic: rpc error: code = Unknown desc = auth: revision in header is old

goroutine 45 [running]:
main.test(0xc420098f20, 0xc42019e180, 0x7)
        ***/main.go:46 +0x815
created by main.main
        ***/main.go:67 +0x213
exit status 2

I have tested in both master and release-3.2 branch

master works fine

etcd Version: 3.2.0+git
Git SHA: fa32a85e6
Go Version: go1.8.3
Go OS/Arch: darwin/amd64

but release-3.2 will panic

etcd Version: 3.2.5+git
Git SHA: fa0f27878
Go Version: go1.8.3
Go OS/Arch: darwin/amd64

@zhaoyao
Copy link
Author

zhaoyao commented Aug 16, 2017

The reason why I think #8306 fixes this issue is that pr checks internalRaftRequest result.Err, while release-3.2 does not check this.

@heyitsanthony
Copy link
Contributor

OK, this can be backported once there's a test case for CI

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants