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

error code 18 ... pruned from inter bid list #9033

Closed
dckc opened this issue Mar 4, 2024 · 0 comments · Fixed by #9024
Closed

error code 18 ... pruned from inter bid list #9033

dckc opened this issue Mar 4, 2024 · 0 comments · Fixed by #9024
Assignees
Labels
auction bug Something isn't working Inter-protocol Overarching Inter Protocol

Comments

@dckc
Copy link
Member

dckc commented Mar 4, 2024

Describe the bug

agops inter bid list crashes

Similar symptoms have come up in discussion with Oracle operators.

To Reproduce

Steps to reproduce the behavior:

  1. AGORIC_NET=emerynet inter bid list --from agoric1ldmtatp24qlllgxmrsjzcpe20fvlkp448zcuce
  2. See error
$ AGORIC_NET=emerynet inter bid list --from agoric1ldmtatp24qlllgxmrsjzcpe20fvlkp448zcuce
(Error#1)
Error#1: error code 18 reading data of published.wallet.agoric1ldmtatp24qlllgxmrsjzcpe20fvlkp448zcuce: failed to load state at height 4067923; version mismatch on immutable IAVL tree; version does not exist. Version has either been pruned, or is for a future block height (latest height: 4110876): invalid request

  at packages/agoric-cli/src/lib/rpc.js:83:23
  at async Object.readAt (packages/agoric-cli/src/lib/rpc.js:122:19)
  at async Object.readFully (packages/agoric-cli/src/lib/rpc.js:144:38)
  at async storedWalletState (packages/agoric-cli/src/lib/wallet.js:228:21)
  at async Promise.all (index 1)
  at async Command.<anonymous> (packages/agoric-cli/src/commands/inter.js:566:34)

Expected behavior

List bids from that account.

Platform Environment

  • what OS are you using? what version of Node.js?
$ uname -a
Linux bldbox 5.15.0-92-generic #102-Ubuntu SMP Wed Jan 10 09:33:48 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
$ node --version
v18.17.1
  • is there anything special/unusual about your platform?
  • what version of the Agoric-SDK are you using? (run git describe --tags --always)

@agoric/cosmic-swingset@0.41.3-1359-gfd0382de8 fd0382d

Additional context

Listing your open bids: inter bid list in Inter Protocol Liquidation Bidding Test Tool

cc @otoole-brendan @michaelfig

@dckc dckc added bug Something isn't working Inter-protocol Overarching Inter Protocol auction labels Mar 4, 2024
@mergify mergify bot closed this as completed in #9024 Apr 22, 2024
mergify bot added a commit that referenced this issue Apr 22, 2024
fixes #9033

avoid:

```
Error#1: error code 18 reading data of published.wallet.agoric1l...: failed to load state at height 14007...; version mismatch on immutable IAVL tree; version does not exist. Version has either been pruned, or is for a future block height (latest height: 14026...): invalid request

  at packages/agoric-cli/src/lib/rpc.js:83:23
  at async Object.readAt (packages/agoric-cli/src/lib/rpc.js:122:19)
  at async Object.readFully (packages/agoric-cli/src/lib/rpc.js:144:38)
  at async storedWalletState (packages/agoric-cli/src/lib/wallet.js:228:21)
  at async Promise.all (index 1)
  at async
  Command.<anonymous> (packages/agoric-cli/src/commands/inter.js:566:34)
```

## Description

When exploring the history of data at a vstorage key, `err.codespace ===
'sdk' && err.code === 38` is sort of the first-class signal for "there
is no more" (_according to what? I'm not sure_). But we don't seem to
always get that sort of error. We have also accepted any error whose
message matches `/unknown request/`. With this change, we also take
`/pruned/` as such a signal.

DRAFT until:

- [ ] is there a spec for these errors that we could / should cite in
this code?
 - [ ] given the cost of a test, is it OK to land this without one?
- [ ] to fully address #9033, is there something on the chain side that
we should fix? or is this enough? That is: should I change "closes" to
"refs"?

### Security / Scaling Considerations

n / a

### Documentation Considerations

If this fix is to-spec, then there are none. Otherwise, perhaps some
disclaimer is in order, at least as a code comment.

### Testing Considerations

A fix normally comes with a test. A unit test would be nice. But this
testing CLI code isn't factored to facilitate unit testing. It kinda
needs a whole running blockchain. So a test is probably more trouble
than it's worth for a ~1 line fix.

### Upgrade Considerations

The change that introduced the symptoms of #9033 was evidently missing
some upgrade considerations.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
auction bug Something isn't working Inter-protocol Overarching Inter Protocol
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant