Fix ProcessProposalAsync

This commit is contained in:
Sergio Mena
2022-07-24 17:52:00 +02:00
parent 873b90867a
commit 0a0812cce9
3 changed files with 12 additions and 35 deletions

View File

@@ -309,26 +309,14 @@ func (cli *grpcClient) PrepareProposalAsync(params types.RequestPrepareProposal)
return cli.finishAsyncCall(req, &types.Response{Value: &types.Response_PrepareProposal{PrepareProposal: res}})
}
func (cli *grpcClient) ProcessProposalAsync(
ctx context.Context,
params types.RequestProcessProposal,
) (*ReqRes, error) {
func (cli *grpcClient) ProcessProposalAsync(params types.RequestProcessProposal) *ReqRes {
req := types.ToRequestProcessProposal(params)
res, err := cli.client.ProcessProposal(ctx, req.GetProcessProposal(), grpc.WaitForReady(true))
res, err := cli.client.ProcessProposal(context.Background(), req.GetProcessProposal(), grpc.WaitForReady(true))
if err != nil {
return nil, err
cli.StopForError(err)
}
return cli.finishAsyncCall(
ctx,
req,
&types.Response{
Value: &types.Response_ProcessProposal{
ProcessProposal: res,
},
},
)
return cli.finishAsyncCall(req, &types.Response{Value: &types.Response_ProcessProposal{ProcessProposal: res}})
}
// finishAsyncCall creates a ReqRes for an async call, and immediately populates it
@@ -455,14 +443,7 @@ func (cli *grpcClient) PrepareProposalSync(
return cli.finishSyncCall(reqres).GetPrepareProposal(), cli.Error()
}
func (cli *grpcClient) ProcessProposalSync(
ctx context.Context,
params types.RequestProcessProposal,
) (*types.ResponseProcessProposal, error) {
reqres, err := cli.ProcessProposalAsync(ctx, params)
if err != nil {
return nil, err
}
func (cli *grpcClient) ProcessProposalSync(params types.RequestProcessProposal) (*types.ResponseProcessProposal, error) {
reqres := cli.ProcessProposalAsync(params)
return cli.finishSyncCall(reqres).GetProcessProposal(), cli.Error()
}

View File

@@ -4,6 +4,7 @@ import (
types "github.com/tendermint/tendermint/abci/types"
"github.com/tendermint/tendermint/libs/service"
tmsync "github.com/tendermint/tendermint/libs/sync"
"golang.org/x/net/context"
)
var _ Client = (*localClient)(nil)
@@ -218,10 +219,7 @@ func (app *localClient) PrepareProposalAsync(req types.RequestPrepareProposal) *
)
}
func (app *localClient) ProcessProposalAsync(
ctx context.Context,
req types.RequestProcessProposal,
) (*ReqRes, error) {
func (app *localClient) ProcessProposalAsync(req types.RequestProcessProposal) *ReqRes {
app.mtx.Lock()
defer app.mtx.Unlock()
@@ -229,7 +227,7 @@ func (app *localClient) ProcessProposalAsync(
return app.callback(
types.ToRequestProcessProposal(req),
types.ToResponseProcessProposal(res),
), nil
)
}
//-------------------------------------------------------

View File

@@ -15,6 +15,7 @@ import (
"github.com/tendermint/tendermint/libs/service"
tmsync "github.com/tendermint/tendermint/libs/sync"
"github.com/tendermint/tendermint/libs/timer"
"golang.org/x/net/context"
)
const (
@@ -283,11 +284,8 @@ func (cli *socketClient) PrepareProposalAsync(req types.RequestPrepareProposal)
return cli.queueRequest(types.ToRequestPrepareProposal(req))
}
func (cli *socketClient) ProcessProposalAsync(
ctx context.Context,
req types.RequestProcessProposal,
) (*ReqRes, error) {
return cli.queueRequestAsync(ctx, types.ToRequestProcessProposal(req))
func (cli *socketClient) ProcessProposalAsync(req types.RequestProcessProposal) *ReqRes {
return cli.queueRequest(types.ToRequestProcessProposal(req))
}
//----------------------------------------