diff --git a/api/api_errors.go b/api/api_errors.go index 953cf63bf..53460aea7 100644 --- a/api/api_errors.go +++ b/api/api_errors.go @@ -11,19 +11,19 @@ const ( type ErrOutOfGas struct{} -func (e ErrOutOfGas) Error() string { +func (e *ErrOutOfGas) Error() string { return "call ran out of gas" } type ErrActorNotFound struct{} -func (e ErrActorNotFound) Error() string { +func (e *ErrActorNotFound) Error() string { return "actor not found" } var RPCErrors = jsonrpc.NewErrors() func init() { - RPCErrors.Register(EOutOfGas, new(ErrOutOfGas)) - RPCErrors.Register(EActorNotFound, new(ErrActorNotFound)) + RPCErrors.Register(EOutOfGas, new(*ErrOutOfGas)) + RPCErrors.Register(EActorNotFound, new(*ErrActorNotFound)) } diff --git a/go.mod b/go.mod index 26f6dc51b..d22957162 100644 --- a/go.mod +++ b/go.mod @@ -38,7 +38,7 @@ require ( github.com/filecoin-project/go-fil-commcid v0.1.0 github.com/filecoin-project/go-fil-commp-hashhash v0.1.0 github.com/filecoin-project/go-fil-markets v1.24.0 - github.com/filecoin-project/go-jsonrpc v0.1.7 + github.com/filecoin-project/go-jsonrpc v0.1.8 github.com/filecoin-project/go-legs v0.4.4 github.com/filecoin-project/go-padreader v0.0.1 github.com/filecoin-project/go-paramfetch v0.0.4 diff --git a/go.sum b/go.sum index 61264ec74..0d0d5626f 100644 --- a/go.sum +++ b/go.sum @@ -327,8 +327,8 @@ github.com/filecoin-project/go-hamt-ipld/v2 v2.0.0/go.mod h1:7aWZdaQ1b16BVoQUYR+ github.com/filecoin-project/go-hamt-ipld/v3 v3.0.1/go.mod h1:gXpNmr3oQx8l3o7qkGyDjJjYSRX7hp/FGOStdqrWyDI= github.com/filecoin-project/go-hamt-ipld/v3 v3.1.0 h1:rVVNq0x6RGQIzCo1iiJlGFm9AGIZzeifggxtKMU7zmI= github.com/filecoin-project/go-hamt-ipld/v3 v3.1.0/go.mod h1:bxmzgT8tmeVQA1/gvBwFmYdT8SOFUwB3ovSUfG1Ux0g= -github.com/filecoin-project/go-jsonrpc v0.1.7 h1:Ti/QkQLI31v+6hvidA+i9Wv/NrS4CfHk0yXLntHX3Uk= -github.com/filecoin-project/go-jsonrpc v0.1.7/go.mod h1:XBBpuKIMaXIIzeqzO1iucq4GvbF8CxmXRFoezRh+Cx4= +github.com/filecoin-project/go-jsonrpc v0.1.8 h1:uXX/ikAk3Q4f/k8DRd9Zw+fWnfiYb5I+UI1tzlQgHog= +github.com/filecoin-project/go-jsonrpc v0.1.8/go.mod h1:XBBpuKIMaXIIzeqzO1iucq4GvbF8CxmXRFoezRh+Cx4= github.com/filecoin-project/go-legs v0.4.4 h1:mpMmAOOnamaz0CV9rgeKhEWA8j9kMC+f+UGCGrxKaZo= github.com/filecoin-project/go-legs v0.4.4/go.mod h1:JQ3hA6xpJdbR8euZ2rO0jkxaMxeidXf0LDnVuqPAe9s= github.com/filecoin-project/go-padreader v0.0.0-20200903213702-ed5fae088b20/go.mod h1:mPn+LRRd5gEKNAtc+r3ScpW2JRU/pj4NBKdADYWHiak= diff --git a/itests/api_test.go b/itests/api_test.go index 36b495c61..2afbc0bd0 100644 --- a/itests/api_test.go +++ b/itests/api_test.go @@ -176,7 +176,7 @@ func (ts *apiSuite) testOutOfGasError(t *testing.T) { _, err = full.GasEstimateMessageGas(ctx, msg, nil, types.EmptyTSK) require.Error(t, err, "should have failed") - require.True(t, xerrors.Is(err, lapi.ErrOutOfGas{})) + require.True(t, xerrors.Is(err, &lapi.ErrOutOfGas{})) } func (ts *apiSuite) testLookupNotFoundError(t *testing.T) { @@ -189,7 +189,7 @@ func (ts *apiSuite) testLookupNotFoundError(t *testing.T) { _, err = full.StateLookupID(ctx, addr, types.EmptyTSK) require.Error(t, err) - require.True(t, xerrors.Is(err, lapi.ErrActorNotFound{})) + require.True(t, xerrors.Is(err, &lapi.ErrActorNotFound{})) } func (ts *apiSuite) testMining(t *testing.T) { diff --git a/itests/paych_cli_test.go b/itests/paych_cli_test.go index 0075a1204..f86f5d8de 100644 --- a/itests/paych_cli_test.go +++ b/itests/paych_cli_test.go @@ -71,7 +71,7 @@ func TestPaymentChannelsBasic(t *testing.T) { // This makes us wait as much as 10 epochs before giving up and failing retry := 0 _, err = paymentReceiver.StateLookupID(ctx, chAddr, types.EmptyTSK) - for err != nil && xerrors.Is(err, api.ErrActorNotFound{}) { + for err != nil && xerrors.Is(err, &api.ErrActorNotFound{}) { time.Sleep(blocktime) _, err = paymentReceiver.StateLookupID(ctx, chAddr, types.EmptyTSK) retry++ diff --git a/node/impl/full/gas.go b/node/impl/full/gas.go index 4b7ebc4a0..8cbe9ea1c 100644 --- a/node/impl/full/gas.go +++ b/node/impl/full/gas.go @@ -291,7 +291,7 @@ func gasEstimateGasLimit( return -1, xerrors.Errorf("CallWithGas failed: %w", err) } if res.MsgRct.ExitCode == exitcode.SysErrOutOfGas { - return -1, api.ErrOutOfGas{} + return -1, &api.ErrOutOfGas{} } if res.MsgRct.ExitCode != exitcode.Ok { diff --git a/node/impl/full/state.go b/node/impl/full/state.go index d11037d49..97f3c83dc 100644 --- a/node/impl/full/state.go +++ b/node/impl/full/state.go @@ -484,7 +484,7 @@ func (m *StateModule) StateLookupID(ctx context.Context, addr address.Address, t ret, err := m.StateManager.LookupID(ctx, addr, ts) if err != nil && xerrors.Is(err, types.ErrActorNotFound) { - return address.Undef, api.ErrActorNotFound{} + return address.Undef, &api.ErrActorNotFound{} } return ret, err