-
Notifications
You must be signed in to change notification settings - Fork 87
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
fix(relayer): change reqwest
for isahc
in relayer blackbox tests (ENG-699)
#1366
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Interesting. Some years ago I observed that I'd get double digits millisecond latency on Linux compared to the macOS loopback device (which was in the low digit ms).
Do you know why isahc's latency is so much lower? Just experimenting?
tower = { version = "0.4.13" } | ||
tokio-test.workspace = true | ||
rand_chacha = "0.3.1" | ||
|
||
[build-dependencies] | ||
astria-build-info = { path = "../astria-build-info", features = ["build"] } | ||
|
||
[lints.rust] | ||
unexpected_cfgs = { level = "warn", check-cfg = [ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is this for?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was getting a bunch of warnings when building on macOS, and this was the fix suggested as part of the warning text.
@@ -273,7 +273,7 @@ async fn should_filter_rollup() { | |||
.await; | |||
sequencer_relayer | |||
.timeout_ms( | |||
2_000, | |||
10_000, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems like it might just fix the tests itself (compared to swapping out reqwest for isahc)?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It was more the calls to TestSequencerRelayer::get_from_relayer_api
which were causing multiple tests to fail - specifically the 100ms timeout inside that method.
Even after fixing that (by using isahc) this test was occasionally taking just over 2 seconds on macOS. I didn't check if we also see that on Linux.
I was recommended |
* main: refactor(core, proto)!: define app genesis state in proto (#1346) fix(sequencer): bump penumbra dep to fix ibc state access bug (#1389) feat(conductor)!: support disabled celestia auth (#1372) fix(sequencer)!: fix block fees (#1343) perf(sequencer): add benchmark for prepare_proposal (ENG-660) (#1337) fix(proto): fix import name mismatch (#1380) fix(ci): enable bridge withdrawer building with tag (#1374) feat(sequencer): rewrite memool to have per-account transaction storage and maintenance (#1323) refactor(core, sequencer)!: require that bridge unlock address always be set (#1339) fix(sequencer)!: take funds from bridge in ics20 withdrawals (#1344) fix(sequencer)!: fix TOCTOU issues by merging check and execution (#1332) fix: abci error code (#1280) refactor(core): shorten `try_from_block_info_and_data()` (#1371) fix(relayer): change `reqwest` for `isahc` in relayer blackbox tests (ENG-699) (#1366) fix(conductor): update for celestia-node v0.15.0 (#1367) Chore: Upgrade celestia-node to v0.14.1 (#1360) chore(charts): fix charts production templates (#1359) chore(core, proto): migrate byte slices from Vec to Bytes (#1319)
Summary
This is a straight swap of
isahc
in place ofreqwest
in the relayer's blackbox tests. Other than a single timeout being increased, no logic was changed.Background
Blackbox tests were failing on macOS due to the poor performance of the
reqwest
messages. The timeout for aGET
was set to 100ms, and usingreqwest
I was seeing times around 120ms. By swapping toisahc
, times dropped to 2ms.Changes
isahc
in place ofreqwest
in the realyer's blackbox tests.[lints.rust]
to the relayer's manifest to squash some warnings.Testing
No new tests required, existing ones now pass on macOS.
Related Issues
Closes #1354.