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

view: 🥜 ViewServer support for an in-memory gRPC endpoint #4517

Open
cratelyn opened this issue May 31, 2024 · 1 comment
Open

view: 🥜 ViewServer support for an in-memory gRPC endpoint #4517

cratelyn opened this issue May 31, 2024 · 1 comment
Labels
A-client Area: Design and implementation for client functionality A-mock-consensus Area: Relates to the mock consensus engine A-testing Area: Relates to testing of Penumbra C-enhancement Category: an enhancement to the codebase needs-refinement unclear, incomplete, or stub issue that needs work

Comments

@cratelyn
Copy link
Contributor

cratelyn commented May 31, 2024

refs:

mock consensus tests that use a view server must bind an rpc endpoint to a local port. this is unfortunate because it requires acquisition of a global resource, and can over time cause test suites to be flaky / brittle.

this could be abated by adding support for an in-memory gRPC endpoint to the ViewServer and its underlying Worker.

see https://github.com/penumbra-zone/penumbra/tree/kate/view-server-tests-redux.box-grpc-endpoint-experiment as a starting sketch.

see #4471 (comment) for relevant discussion from #4471.

@github-project-automation github-project-automation bot moved this to Backlog in Penumbra May 31, 2024
@cratelyn cratelyn added A-testing Area: Relates to testing of Penumbra A-mock-consensus Area: Relates to the mock consensus engine labels May 31, 2024
@github-actions github-actions bot added the needs-refinement unclear, incomplete, or stub issue that needs work label May 31, 2024
@cratelyn cratelyn added A-client Area: Design and implementation for client functionality C-enhancement Category: an enhancement to the codebase labels May 31, 2024
@cratelyn
Copy link
Contributor Author

i observed the test from #4471 flake in CI, after opening #4585. re-running the job worked, fixing this issue will prevent that flake from occurring going forward.

erwanor added a commit that referenced this issue Jun 17, 2024
## Describe your changes

This disable two app tests that have flake occasionally.

## Issue ticket number and link

Possibly related to #4517 

## 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:
conorsch added a commit that referenced this issue Aug 23, 2024
Follow-up to #4747. Noticed the new tests were flaking across multiple
runs. Turns out they were fighting for port binds, as described already
in #4517. Let's just use a unique port pair for the MockRelayers and
call it a day for now.
conorsch added a commit that referenced this issue Aug 23, 2024
Follow-up to #4747. Noticed the new tests were flaking across multiple
runs. Turns out they were fighting for port binds, as described already
in #4517. Let's just use a unique port pair for the MockRelayers and
call it a day for now.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-client Area: Design and implementation for client functionality A-mock-consensus Area: Relates to the mock consensus engine A-testing Area: Relates to testing of Penumbra C-enhancement Category: an enhancement to the codebase needs-refinement unclear, incomplete, or stub issue that needs work
Projects
Status: Backlog
Development

No branches or pull requests

1 participant