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

WIP: Fix keybase lock issues #2655

Closed

Conversation

alessio
Copy link
Contributor

@alessio alessio commented Nov 1, 2018

Closes: #2649

  • Linked to github-issue with discussion and accepted design OR link to spec that describes this work.
  • Wrote tests
  • Updated relevant documentation (docs/)
  • Added entries in PENDING.md with issue #
  • rereviewed Files changed in the github PR explorer

For Admin Use:

  • Added appropriate labels to PR (ex. wip, ready-for-review, docs)
  • Reviewers Assigned
  • Squashed all commits, uses message "Merge pull request #XYZ: [title]" (coding standards)

@codecov
Copy link

codecov bot commented Nov 1, 2018

Codecov Report

Merging #2655 into develop will decrease coverage by <.01%.
The diff coverage is 66.66%.

@@             Coverage Diff             @@
##           develop    #2655      +/-   ##
===========================================
- Coverage    58.82%   58.81%   -0.01%     
===========================================
  Files          152      152              
  Lines         9425     9422       -3     
===========================================
- Hits          5544     5542       -2     
+ Misses        3511     3510       -1     
  Partials       370      370

@alessio alessio changed the title Fix keybase lock issues R4R: Fix keybase lock issues Nov 1, 2018
Copy link
Contributor

@cwgoes cwgoes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks; see comments.

@cwgoes
Copy link
Contributor

cwgoes commented Nov 1, 2018

Fails test_cover now - and are you sure you added the CloseDB() calls after the new handlers?

@faboweb
Copy link
Contributor

faboweb commented Nov 1, 2018

Error on latest:

electron  gaiacli: E[11-01|14:41:19.856] Panic in RPC HTTP handler                   module=rest-server err="leveldb: closed" stack="goroutine 47 [running]:\nruntime/debug.Stack(0xc00086b7c8, 0x1944400, 0xc0001b0130)\n\t/usr/local/go/src/runtime/debug/stack.go:24 +0xa7\ngithub.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/rpc/lib/server.RecoverAndLogHandler.func1.1(0xc000b72920, 0x1ef0660, 0xc0001c22e0, 0xbeeede7ff30d4e30, 0x8f7fef38, 0x262c000, 0xc000be4a00)\n\t/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/rpc/lib/server/http_server.go:174 +0x50c\npanic(0x1944400, 0xc0001b0130)\n\t/usr/local/go/src/runtime/panic.go:513 +0x1b9\ngithub.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/libs/db.(*goLevelDBIterator).assertNoError(0xc000226690)\n\t/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/libs/db/go_level_db.go:323 +0x60\ngithub.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/libs/db.(*goLevelDBIterator).Valid(0xc000226690, 0x1ef39f8)\n\t/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/libs/db/go_level_db.go:259 +0x3e\ngithub.com/cosmos/cosmos-sdk/crypto/keys.dbKeybase.List(0x1ef7aa0, 0xc0000c4088, 0x0, 0x0, 0x0, 0x0, 0x0)\n\t/go/src/github.com/cosmos/cosmos-sdk/crypto/keys/keybase.go:202+0x12b\ngithub.com/cosmos/cosmos-sdk/client/keys.QueryKeysRequestHandler.func1(0x1eee820, 0xc000b72920, 0xc000be4c00)\n\t/go/src/github.com/cosmos/cosmos-sdk/client/keys/list.go:48 +0x9d\nnet/http.HandlerFunc.ServeHTTP(0xc000bf02d0, 0x1eee820, 0xc000b72920, 0xc000be4c00)\n\t/usr/local/go/src/net/http/server.go:1964 +0x44\ngithub.com/cosmos/cosmos-sdk/vendor/github.com/gorilla/mux.(*Router).ServeHTTP(0xc000b9c700, 0x1eee820, 0xc000b72920, 0xc000be4c00)\n\t/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/gorilla/mux/mux.go:162 +0xf1\ngithub.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/rpc/lib/server.maxBytesHandler.ServeHTTP(0x1ee4f60, 0xc000b9c700, 0xf4240, 0x1eee820, 0xc000b72920, 0xc000be4a00)\n\t/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/rpc/lib/server/http_server.go:220 +0xcf\ngithub.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/rpc/lib/server.RecoverAndLogHandler.func1(0x1eeed20, 0xc000902380, 0xc000be4a00)\n\t/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/rpc/lib/server/http_server.go:193 +0x394\nnet/http.HandlerFunc.ServeHTTP(0xc000c50030, 0x1eeed20, 0xc000902380, 0xc000be4a00)\n\t/usr/local/go/src/net/http/server.go:1964 +0x44\nnet/http.serverHandler.ServeHTTP(0xc0000a4a90, 0x1eeed20, 0xc000902380, 0xc000be4a00)\n\t/usr/local/go/src/net/http/server.go:2741 +0xab\nnet/http.(*conn).serve(0xc000ba2aa0, 0x1eef860, 0xc0000abfc0)\n\t/usr/local/go/src/net/http/server.go:1847 +0x646\ncreated by net/http.(*Server).Serve\n\t/usr/local/go/src/net/http/server.go:2851 +0x2f5\n"

electron  gaiacli: I[11-01|14:41:19.856] Served RPC HTTP response                   module=rest-server method=GET url=/keys status=200 duration=0 remoteAddr=127.0.0.1:60298
          E[11-01|14:41:19.859] Panic in RPC HTTP handler          module=rest-server err="leveldb: closed" stack="goroutine 47 [running]:\nruntime/debug.Stack(0xc000a597c8, 0x1944400, 0xc0001b0130)\n\t/usr/local/go/src/runtime/debug/stack.go:24 +0xa7\ngithub.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/rpc/lib/server.RecoverAndLogHandler.func1.1(0xc000b72c80, 0x1ef0660, 0xc0001c22e0, 0xbeeede7ff3359e80, 0x8fa83e8c, 0x262c000, 0xc000be4e00)\n\t/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/rpc/lib/server/http_server.go:174 +0x50c\npanic(0x1944400, 0xc0001b0130)\n\t/usr/local/go/src/runtime/panic.go:513 +0x1b9\ngithub.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/libs/db.(*goLevelDBIterator).assertNoError(0xc000226780)\n\t/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/libs/db/go_level_db.go:323 +0x60\ngithub.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/libs/db.(*goLevelDBIterator).Valid(0xc000226780, 0x1ef39f8)\n\t/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/libs/db/go_level_db.go:259 +0x3e\ngithub.com/cosmos/cosmos-sdk/crypto/keys.dbKeybase.List(0x1ef7aa0, 0xc0000c4088, 0x0, 0x0, 0x0, 0x0, 0x0)\n\t/go/src/github.com/cosmos/cosmos-sdk/crypto/keys/keybase.go:202 +0x12b\ngithub.com/cosmos/cosmos-sdk/client/keys.QueryKeysRequestHandler.func1(0x1eee820, 0xc000b72c80, 0xc000be5000)\n\t/go/src/github.com/cosmos/cosmos-sdk/client/keys/list.go:48 +0x9d\nnet/http.HandlerFunc.ServeHTTP(0xc000bf02d0, 0x1eee820, 0xc000b72c80, 0xc000be5000)\n\t/usr/local/go/src/net/http/server.go:1964 +0x44\ngithub.com/cosmos/cosmos-sdk/vendor/github.com/gorilla/mux.(*Router).ServeHTTP(0xc000b9c700, 0x1eee820, 0xc000b72c80, 0xc000be5000)\n\t/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/gorilla/mux/mux.go:162 +0xf1\ngithub.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/rpc/lib/server.maxBytesHandler.ServeHTTP(0x1ee4f60, 0xc000b9c700,0xf4240, 0x1eee820, 0xc000b72c80, 0xc000be4e00)\n\t/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/rpc/lib/server/http_server.go:220 +0xcf\ngithub.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/rpc/lib/server.RecoverAndLogHandler.func1(0x1eeed20, 0xc000902460, 0xc000be4e00)\n\t/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/rpc/lib/server/http_server.go:193 +0x394\nnet/http.HandlerFunc.ServeHTTP(0xc000c50030, 0x1eeed20, 0xc000902460, 0xc000be4e00)\n\t/usr/local/go/src/net/http/server.go:1964 +0x44\nnet/http.serverHandler.ServeHTTP(0xc0000a4a90, 0x1eeed20, 0xc000902460, 0xc000be4e00)\n\t/usr/local/go/src/net/http/server.go:2741 +0xab\nnet/http.(*conn).serve(0xc000ba2aa0, 0x1eef860, 0xc0000abfc0)\n\t/usr/local/go/src/net/http/server.go:1847 +0x646\ncreated by net/http.(*Server).Serve\n\t/usr/local/go/src/net/http/server.go:2851 +0x2f5\n"
          I[11-01|14:41:19.859] Served RPC HTTP response          module=rest-server method=GET url=/keys status=200 duration=0 remoteAddr=127.0.0.1:60298

electron  gaiacli: 2018/11/01 14:41:19 http: multiple response.WriteHeader calls
          2018/11/01 14:41:19 http: multiple response.WriteHeader calls

Copy link
Contributor

@alexanderbez alexanderbez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seconding what @cwgoes stated

@alexanderbez alexanderbez changed the title R4R: Fix keybase lock issues WIP: Fix keybase lock issues Nov 2, 2018
@alexanderbez
Copy link
Contributor

@alessio added the WIP. Let us know when this is R4R again 👍

@cwgoes
Copy link
Contributor

cwgoes commented Nov 26, 2018

Bump @alessio - still relevant I think?

@alessio
Copy link
Contributor Author

alessio commented Nov 26, 2018

upstream didn't fix the issue for us, still investigating

@@ -188,6 +188,11 @@ func Bech32ValKeyOutput(keyInfo keys.Info) (KeyOutput, error) {
}, nil
}

func CloseKeybase() {
keybase.CloseDB()
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

so is the keybase held in a global variable in this package?

@jackzampolin jackzampolin added the S:blocked Status: Blocked label Dec 4, 2018
@cwgoes
Copy link
Contributor

cwgoes commented Jan 17, 2019

Bump @alessio - still blocked on upstream? Maybe we should give up on this if so.

@alessio
Copy link
Contributor Author

alessio commented Jan 19, 2019 via email

@alessio
Copy link
Contributor Author

alessio commented Feb 6, 2019

Same issue was successfully addressed by #3514. Hence closing.

@alessio alessio closed this Feb 6, 2019
@alessio alessio deleted the alessio/2649-dont-initialise-kb-on-rest-startup branch February 6, 2019 22:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S:blocked Status: Blocked T:Bug
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants