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

Update Rust crate tarpc to v0.35.0 #5505

Merged
merged 2 commits into from
Oct 30, 2024
Merged

Update Rust crate tarpc to v0.35.0 #5505

merged 2 commits into from
Oct 30, 2024

Conversation

hash-worker[bot]
Copy link
Contributor

@hash-worker hash-worker bot commented Oct 27, 2024

This PR contains the following updates:

Package Type Update Change
tarpc workspace.dependencies minor =0.33 -> =0.35.0

Release Notes

google/tarpc (tarpc)

v0.35.0

Compare Source

v0.34.0

Breaking Changes
  • #[tarpc::server] is no more! Service traits now use async fns.
  • Channel::execute no longer spawns request handlers. Async-fn-in-traits makes it impossible to
    add a Send bound to the future returned by Serve::serve. Instead, Channel::execute returns a
    stream of futures, where each future is a request handler. To achieve the former behavior:
    channel.execute(server.serve())
           .for_each(|rpc| { tokio::spawn(rpc); })
New Features
  • Request hooks are added to the serve trait, so that it's easy to hook in cross-cutting
    functionality like throttling, authorization, etc.
  • The Client trait is back! This makes it possible to hook in generic client functionality like load
    balancing, retries, etc.

Configuration

📅 Schedule: Branch creation - "before 4am every weekday,every weekend" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

@hash-worker hash-worker bot enabled auto-merge October 27, 2024 09:12
@hash-worker hash-worker bot requested a review from a team October 27, 2024 09:12
@github-actions github-actions bot added the area/deps Relates to third-party dependencies (area) label Oct 27, 2024
hashdotai
hashdotai previously approved these changes Oct 27, 2024
Copy link

codecov bot commented Oct 30, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 20.15%. Comparing base (3b601d7) to head (1294cea).
Report is 711 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #5505      +/-   ##
==========================================
- Coverage   20.21%   20.15%   -0.07%     
==========================================
  Files         508      508              
  Lines       17252    17287      +35     
  Branches     2533     2532       -1     
==========================================
- Hits         3488     3484       -4     
- Misses      13726    13765      +39     
  Partials       38       38              
Flag Coverage Δ
apps.hash-ai-worker-ts 1.39% <ø> (ø)
apps.hash-api 1.19% <ø> (-0.01%) ⬇️
blockprotocol.type-system 48.46% <ø> (ø)
local.hash-backend-utils 8.83% <ø> (+0.01%) ⬆️
local.hash-isomorphic-utils 1.06% <ø> (-0.01%) ⬇️
local.hash-subgraph 24.32% <ø> (ø)
rust.deer 5.88% <ø> (ø)
rust.error-stack 73.06% <ø> (ø)
rust.sarif 87.66% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@hash-worker hash-worker bot added this pull request to the merge queue Oct 30, 2024
Copy link
Contributor

Benchmark results

@rust/graph-benches – Integrations

representative_read_entity_type

Function Value Mean Flame graphs
get_entity_type_by_id Account ID: d4e16033-c281-4cde-aa35-9085bf2e7579 $$1.42 \mathrm{ms} \pm 6.13 \mathrm{μs}\left({\color{gray}1.71 \mathrm{\%}}\right) $$ Flame Graph

scaling_read_entity_complete_zero_depth

Function Value Mean Flame graphs
entity_by_id 10 entities $$2.14 \mathrm{ms} \pm 12.7 \mathrm{μs}\left({\color{red}5.75 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 50 entities $$4.39 \mathrm{ms} \pm 25.1 \mathrm{μs}\left({\color{lightgreen}-17.607 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 1 entities $$1.89 \mathrm{ms} \pm 10.5 \mathrm{μs}\left({\color{gray}-0.562 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 5 entities $$1.90 \mathrm{ms} \pm 13.4 \mathrm{μs}\left({\color{gray}-0.658 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 25 entities $$3.44 \mathrm{ms} \pm 23.3 \mathrm{μs}\left({\color{gray}4.12 \mathrm{\%}}\right) $$ Flame Graph

scaling_read_entity_linkless

Function Value Mean Flame graphs
entity_by_id 10 entities $$1.94 \mathrm{ms} \pm 12.5 \mathrm{μs}\left({\color{gray}1.88 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 1000 entities $$2.92 \mathrm{ms} \pm 17.0 \mathrm{μs}\left({\color{gray}2.62 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 1 entities $$1.90 \mathrm{ms} \pm 7.29 \mathrm{μs}\left({\color{gray}-0.011 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 10000 entities $$14.7 \mathrm{ms} \pm 85.4 \mathrm{μs}\left({\color{gray}2.10 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 100 entities $$2.08 \mathrm{ms} \pm 10.9 \mathrm{μs}\left({\color{gray}3.29 \mathrm{\%}}\right) $$ Flame Graph

representative_read_multiple_entities

Function Value Mean Flame graphs
entity_by_property depths: DT=255, PT=255, ET=255, E=255 $$71.3 \mathrm{ms} \pm 338 \mathrm{μs}\left({\color{gray}1.15 \mathrm{\%}}\right) $$ Flame Graph
entity_by_property depths: DT=0, PT=2, ET=2, E=2 $$57.7 \mathrm{ms} \pm 433 \mathrm{μs}\left({\color{gray}2.82 \mathrm{\%}}\right) $$ Flame Graph
entity_by_property depths: DT=0, PT=0, ET=0, E=0 $$43.3 \mathrm{ms} \pm 275 \mathrm{μs}\left({\color{gray}3.07 \mathrm{\%}}\right) $$ Flame Graph
entity_by_property depths: DT=0, PT=0, ET=2, E=2 $$52.5 \mathrm{ms} \pm 254 \mathrm{μs}\left({\color{gray}-0.788 \mathrm{\%}}\right) $$ Flame Graph
entity_by_property depths: DT=0, PT=0, ET=0, E=2 $$46.6 \mathrm{ms} \pm 280 \mathrm{μs}\left({\color{gray}0.155 \mathrm{\%}}\right) $$ Flame Graph
entity_by_property depths: DT=2, PT=2, ET=2, E=2 $$61.1 \mathrm{ms} \pm 302 \mathrm{μs}\left({\color{gray}2.01 \mathrm{\%}}\right) $$ Flame Graph
link_by_source_by_property depths: DT=255, PT=255, ET=255, E=255 $$111 \mathrm{ms} \pm 804 \mathrm{μs}\left({\color{gray}-1.548 \mathrm{\%}}\right) $$ Flame Graph
link_by_source_by_property depths: DT=0, PT=2, ET=2, E=2 $$96.1 \mathrm{ms} \pm 587 \mathrm{μs}\left({\color{gray}-4.319 \mathrm{\%}}\right) $$ Flame Graph
link_by_source_by_property depths: DT=0, PT=0, ET=0, E=0 $$45.0 \mathrm{ms} \pm 263 \mathrm{μs}\left({\color{gray}-1.056 \mathrm{\%}}\right) $$ Flame Graph
link_by_source_by_property depths: DT=0, PT=0, ET=2, E=2 $$91.6 \mathrm{ms} \pm 410 \mathrm{μs}\left({\color{gray}-2.583 \mathrm{\%}}\right) $$ Flame Graph
link_by_source_by_property depths: DT=0, PT=0, ET=0, E=2 $$85.3 \mathrm{ms} \pm 890 \mathrm{μs}\left({\color{gray}0.015 \mathrm{\%}}\right) $$ Flame Graph
link_by_source_by_property depths: DT=2, PT=2, ET=2, E=2 $$102 \mathrm{ms} \pm 625 \mathrm{μs}\left({\color{gray}-0.907 \mathrm{\%}}\right) $$ Flame Graph

scaling_read_entity_complete_one_depth

Function Value Mean Flame graphs
entity_by_id 10 entities $$51.5 \mathrm{ms} \pm 290 \mathrm{μs}\left({\color{gray}-1.674 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 50 entities $$275 \mathrm{ms} \pm 2.12 \mathrm{ms}\left({\color{gray}-0.549 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 1 entities $$20.0 \mathrm{ms} \pm 101 \mathrm{μs}\left({\color{gray}-2.918 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 5 entities $$25.6 \mathrm{ms} \pm 93.2 \mathrm{μs}\left({\color{gray}-0.528 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 25 entities $$77.2 \mathrm{ms} \pm 335 \mathrm{μs}\left({\color{gray}-0.127 \mathrm{\%}}\right) $$ Flame Graph

representative_read_entity

Function Value Mean Flame graphs
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/uk-address/v/1 $$18.2 \mathrm{ms} \pm 219 \mathrm{μs}\left({\color{red}7.90 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/block/v/1 $$17.9 \mathrm{ms} \pm 223 \mathrm{μs}\left({\color{red}5.75 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/song/v/1 $$18.1 \mathrm{ms} \pm 240 \mathrm{μs}\left({\color{red}7.11 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/book/v/1 $$17.5 \mathrm{ms} \pm 217 \mathrm{μs}\left({\color{gray}3.09 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/playlist/v/1 $$18.4 \mathrm{ms} \pm 252 \mathrm{μs}\left({\color{red}11.6 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/organization/v/1 $$18.6 \mathrm{ms} \pm 231 \mathrm{μs}\left({\color{red}11.1 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/person/v/1 $$18.3 \mathrm{ms} \pm 258 \mathrm{μs}\left({\color{red}6.16 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/page/v/2 $$17.8 \mathrm{ms} \pm 185 \mathrm{μs}\left({\color{gray}4.42 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/building/v/1 $$18.4 \mathrm{ms} \pm 242 \mathrm{μs}\left({\color{red}6.82 \mathrm{\%}}\right) $$ Flame Graph

Merged via the queue into main with commit 292e515 Oct 30, 2024
164 checks passed
@hash-worker hash-worker bot deleted the deps/rs/tarpc-0.x branch October 30, 2024 12:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/apps > hash* Affects HASH (a `hash-*` app) area/apps > hash-graph area/apps area/deps Relates to third-party dependencies (area) type/eng > backend Owned by the @backend team
Development

Successfully merging this pull request may close these issues.

2 participants