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

Support non-verifiable storage keys in the pcli query key interface #4359

Closed
zbuc opened this issue May 8, 2024 · 0 comments · Fixed by #4380
Closed

Support non-verifiable storage keys in the pcli query key interface #4359

zbuc opened this issue May 8, 2024 · 0 comments · Fixed by #4380
Assignees
Labels
A-telemetry Area: Metrics, logging, and other observability-related features C-enhancement Category: an enhancement to the codebase E-day E-easy Effort: Easy
Milestone

Comments

@zbuc
Copy link
Contributor

zbuc commented May 8, 2024

Is your feature request related to a problem? Please describe.
While writing testing instructions for the migration described in #4341 I noticed that the current cnidarium query interfaces pcli query key does not support querying from non-verifiable storage. The streaming interface (pcli query watch) does support it with the --nv-key-regex parameter, however I was unable to get it to work; the command cargo run --release --bin pcli -- query watch --nv-key-regex '^dex/ab/.* showed many other keys passing by but maybe I formatted the regex wrong.

Supporting this behavior is extremely useful for debugging running chain state.

Follow-up work on improving the usability of this interface would be nice (currently it prints base64-encoded data only, it would be nice to have a pretty-print option), though that is lower priority.

Describe the solution you'd like
The pcli query key command should probably:

  • by default, query both non-verifiable storage and the JMT keys and print results from both for all queries
  • optionally support --jmt and --non-verifiable boolean flags.
@github-project-automation github-project-automation bot moved this to Backlog in Penumbra May 8, 2024
@github-actions github-actions bot added the needs-refinement unclear, incomplete, or stub issue that needs work label May 8, 2024
@zbuc zbuc added C-enhancement Category: an enhancement to the codebase E-easy Effort: Easy good first issue A good issue for people without existing context on the project. E-day A-telemetry Area: Metrics, logging, and other observability-related features labels May 8, 2024
@zbuc zbuc moved this from Backlog to In progress in Penumbra May 10, 2024
@zbuc zbuc added this to the Sprint 6 milestone May 10, 2024
@zbuc zbuc self-assigned this May 10, 2024
@erwanor erwanor removed good first issue A good issue for people without existing context on the project. needs-refinement unclear, incomplete, or stub issue that needs work labels May 14, 2024
zbuc added a commit that referenced this issue May 16, 2024
## Describe your changes

This PR adds support for querying nonverifiable storage in the `pcli
query key` interface.

It also changes the API to only generate proofs if requested.

## Issue ticket number and link

Closes #4359 and closes #2647

## Checklist before requesting a review

- [x] If this code contains consensus-breaking changes, I have added the
"consensus-breaking" label. Otherwise, I declare my belief that there
are not consensus-breaking changes, for the following reason:

  > Only changes the key value query API
@github-project-automation github-project-automation bot moved this from In progress to Done in Penumbra May 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-telemetry Area: Metrics, logging, and other observability-related features C-enhancement Category: an enhancement to the codebase E-day E-easy Effort: Easy
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

2 participants