Merge pull request #1032 from elvin-du/develop

Autosequence IBC relay account nonces
This commit is contained in:
Christopher Goes 2018-05-23 21:57:12 +02:00 committed by GitHub
commit 6e92c8fb86
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 63 additions and 7 deletions

View File

@ -1,5 +1,11 @@
# Changelog
## 0.18.1
BUG FIXES
* auto-sequencing transactions correctly
* query sequence via account store
## 0.18.0
*TBD*

47
Gopkg.lock generated
View File

@ -13,6 +13,51 @@
packages = ["btcec"]
revision = "1432d294a5b055c297457c25434efbf13384cc46"
[[projects]]
name = "github.com/cosmos/cosmos-sdk"
packages = [
"baseapp",
"client",
"client/context",
"client/keys",
"client/lcd",
"client/rpc",
"client/tx",
"cmd/gaia/app",
"examples/basecoin/app",
"examples/basecoin/types",
"examples/democoin/app",
"examples/democoin/types",
"examples/democoin/x/cool",
"examples/democoin/x/cool/client/cli",
"examples/democoin/x/pow",
"examples/democoin/x/pow/client/cli",
"examples/democoin/x/simplestake",
"examples/democoin/x/simplestake/client/cli",
"examples/democoin/x/sketchy",
"mock",
"server",
"store",
"tests",
"types",
"version",
"wire",
"x/auth",
"x/auth/client/cli",
"x/auth/client/rest",
"x/bank",
"x/bank/client",
"x/bank/client/cli",
"x/bank/client/rest",
"x/ibc",
"x/ibc/client/cli",
"x/ibc/client/rest",
"x/stake",
"x/stake/client/cli"
]
revision = "187be1a5df81de1fd71da9053102d3a4868ec979"
version = "v0.17.2"
[[projects]]
name = "github.com/davecgh/go-spew"
packages = ["spew"]
@ -457,6 +502,6 @@
[solve-meta]
analyzer-name = "dep"
analyzer-version = 1
inputs-digest = "7540d2ecdb5d7d5084ab4e6132e929bbd501bd6add3006d8f08a6b2c127e0c7d"
inputs-digest = "9b6ee069da61cf1815c332c5624e8af99b51ea72e2e9b91d780db92299598dcc"
solver-name = "gps-cdcl"
solver-version = 1

View File

@ -30,6 +30,7 @@ type relayCommander struct {
decoder sdk.AccountDecoder
mainStore string
ibcStore string
accStore string
logger log.Logger
}
@ -41,6 +42,7 @@ func IBCRelayCmd(cdc *wire.Codec) *cobra.Command {
decoder: authcmd.GetAccountDecoder(cdc),
ibcStore: "ibc",
mainStore: "main",
accStore: "acc",
logger: log.NewTMLogger(log.NewSyncWriter(os.Stdout)),
}
@ -157,17 +159,20 @@ func (c relayCommander) broadcastTx(seq int64, node string, tx []byte) error {
}
func (c relayCommander) getSequence(node string) int64 {
res, err := query(node, c.address, c.mainStore)
res, err := query(node, c.address, c.accStore)
if err != nil {
panic(err)
}
if nil != res {
account, err := c.decoder(res)
if err != nil {
panic(err)
}
account, err := c.decoder(res)
if err != nil {
panic(err)
return account.GetSequence()
}
return account.GetSequence()
return 0
}
func (c relayCommander) refine(bz []byte, sequence int64, passphrase string) []byte {
@ -182,7 +187,7 @@ func (c relayCommander) refine(bz []byte, sequence int64, passphrase string) []b
Sequence: sequence,
}
ctx := context.NewCoreContextFromViper()
ctx := context.NewCoreContextFromViper().WithSequence(sequence)
res, err := ctx.SignAndBuild(ctx.FromAddressName, passphrase, msg, c.cdc)
if err != nil {
panic(err)