Skip to content

Update Rust crate time to v0.3.47 - autoclosed#8272

Closed
hash-worker[bot] wants to merge 1 commit intomainfrom
deps/rs/time-0.x-lockfile
Closed

Update Rust crate time to v0.3.47 - autoclosed#8272
hash-worker[bot] wants to merge 1 commit intomainfrom
deps/rs/time-0.x-lockfile

Conversation

@hash-worker
Copy link
Copy Markdown
Contributor

@hash-worker hash-worker Bot commented Jan 18, 2026

This PR contains the following updates:

Package Type Update Change
time (source) workspace.dependencies patch 0.3.44 -> 0.3.47

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

time-rs/time (time)

v0.3.47

Compare Source

Security
  • The possibility of a stack exhaustion denial of service attack when parsing RFC 2822 has been
    eliminated. Previously, it was possible to craft input that would cause unbounded recursion. Now,
    the depth of the recursion is tracked, causing an error to be returned if it exceeds a reasonable
    limit.

    This attack vector requires parsing user-provided input, with any type, using the RFC 2822 format.

Compatibility
  • Attempting to format a value with a well-known format (i.e. RFC 3339, RFC 2822, or ISO 8601) will
    error at compile time if the type being formatted does not provide sufficient information. This
    would previously fail at runtime. Similarly, attempting to format a value with ISO 8601 that is
    only configured for parsing (i.e. Iso8601::PARSING) will error at compile time.
Added
  • Builder methods for format description modifiers, eliminating the need for verbose initialization
    when done manually.
  • date!(2026-W01-2) is now supported. Previously, a space was required between W and 01.
  • [end] now has a trailing_input modifier which can either be prohibit (the default) or
    discard. When it is discard, all remaining input is ignored. Note that if there are components
    after [end], they will still attempt to be parsed, likely resulting in an error.
Changed
  • More performance gains when parsing.
Fixed
  • If manually formatting a value, the number of bytes written was one short for some components.
    This has been fixed such that the number of bytes written is always correct.
  • The possibility of integer overflow when parsing an owned format description has been effectively
    eliminated. This would previously wrap when overflow checks were disabled. Instead of storing the
    depth as u8, it is stored as u32. This would require multiple gigabytes of nested input to
    overflow, at which point we've got other problems and trivial mitigations are available by
    downstream users.

v0.3.46

Compare Source

Added
  • All possible panics are now documented for the relevant methods.

  • The need to use #[serde(default)] when using custom serde formats is documented. This applies
    only when deserializing an Option<T>.

  • Duration::nanoseconds_i128 has been made public, mirroring
    std::time::Duration::from_nanos_u128.

  • Various methods for truncating components have been added, avoiding the need to call the fallible
    replace methods multiple times.

    For PrimitiveDateTime, UtcDateTime, and OffsetDateTime:

    • truncate_to_day

    For Time, PrimitiveDateTime, UtcDateTime, and OffsetDateTime:

    • truncate_to_hour
    • truncate_to_minute
    • truncate_to_second
    • truncate_to_millisecond
    • truncate_to_microsecond
Changed
  • The minimum supported Rust version is now 1.88.0.
  • Significant performance gains in numerous locations. No public APIs were changed or removed as
    part of this.
  • The size of error::ComponentRange, along with types that contain it, has been significantly
    reduced.
Fixed
  • The PartialOrd and Ord implementations of UtcOffset now return the expected result.

v0.3.45

Compare Source

Added
  • time::format_description::StaticFormatDescription type alias for &'static [BorrowedFormatItem<'static>]. This is the type returned by the
    time::macros::format_description! macro.
Changed
  • The minimum supported Rust version is now 1.83.0.
  • All floating point methods on Duration are now const fn.
  • All setters on Parsed are now const fn.
  • The serde dependency has been replaced with serde_core, This reduces compile times by not
    including unused parts of serde.
  • Date::from_julian_day uses a new algorithm, resulting in an approximately 16% performance
    improvement. This method is used internally by numerous other methods.
  • util::is_leap_year uses a new algorithm, resulting in an approximately 8% performance
    improvement.

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 January 18, 2026 01:05
@cursor
Copy link
Copy Markdown

cursor Bot commented Jan 18, 2026

PR Summary

Low Risk
Lockfile-only dependency bump to the time ecosystem; behavior changes are limited to upstream crate updates (including a security fix) with no direct code changes in this repo.

Overview
Updates the Rust time crate from 0.3.44 to 0.3.47 via Cargo.lock, pulling in corresponding updates to time-core and time-macros and bumping num-conv.

The lockfile also reflects time switching its serialization dependency from serde to serde_core as part of the upstream update.

Written by Cursor Bugbot for commit e22ce41. This will update automatically on new commits. Configure here.

@github-actions github-actions Bot added the area/deps Relates to third-party dependencies (area) label Jan 18, 2026
@augmentcode
Copy link
Copy Markdown

augmentcode Bot commented Jan 18, 2026

🤖 Augment PR Summary

Summary: Updates the Rust time crate dependency from 0.3.44 to 0.3.45 (Renovate bump).

Notes: This PR only updates the lockfile; there are no application/source code changes included.

🤖 Was this summary useful? React with 👍 or 👎

Copy link
Copy Markdown

@augmentcode augmentcode Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review completed. No suggestions at this time.

Comment augment review to trigger a new review at any time.

@codecov
Copy link
Copy Markdown

codecov Bot commented Jan 18, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 60.10%. Comparing base (1492bce) to head (e22ce41).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #8272   +/-   ##
=======================================
  Coverage   60.10%   60.10%           
=======================================
  Files        1235     1235           
  Lines      118201   118201           
  Branches     5180     5180           
=======================================
  Hits        71050    71050           
  Misses      46324    46324           
  Partials      827      827           
Flag Coverage Δ
apps.hash-ai-worker-ts 1.41% <ø> (ø)
apps.hash-api 0.00% <ø> (ø)
blockprotocol.type-system 40.84% <ø> (ø)
local.claude-hooks 0.00% <ø> (ø)
local.harpc-client 51.24% <ø> (ø)
local.hash-graph-sdk 10.88% <ø> (ø)
local.hash-isomorphic-utils 0.00% <ø> (ø)
rust.antsi 0.00% <ø> (ø)
rust.error-stack 90.88% <ø> (ø)
rust.harpc-codec 84.70% <ø> (ø)
rust.harpc-net 96.16% <ø> (ø)
rust.harpc-tower 66.80% <ø> (ø)
rust.harpc-types 0.00% <ø> (ø)
rust.harpc-wire-protocol 92.23% <ø> (ø)
rust.hash-codec 72.76% <ø> (ø)
rust.hash-graph-api 2.88% <ø> (ø)
rust.hash-graph-authorization 62.47% <ø> (ø)
rust.hash-graph-postgres-store 25.61% <ø> (ø)
rust.hash-graph-store 30.54% <ø> (ø)
rust.hash-graph-temporal-versioning 47.95% <ø> (ø)
rust.hash-graph-types 0.00% <ø> (ø)
rust.hash-graph-validation 83.45% <ø> (ø)
rust.hashql-ast 87.25% <ø> (ø)
rust.hashql-compiletest 46.65% <ø> (ø)
rust.hashql-core 81.77% <ø> (ø)
rust.hashql-diagnostics 72.43% <ø> (ø)
rust.hashql-eval 68.54% <ø> (ø)
rust.hashql-hir 89.10% <ø> (ø)
rust.hashql-mir 87.91% <ø> (ø)
rust.hashql-syntax-jexpr 94.05% <ø> (ø)

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.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@codspeed-hq
Copy link
Copy Markdown

codspeed-hq Bot commented Jan 18, 2026

CodSpeed Performance Report

Merging this PR will not alter performance

Comparing deps/rs/time-0.x-lockfile (e22ce41) with main (1492bce)1

Summary

✅ 21 untouched benchmarks
🗄️ 12 archived benchmarks run2

Footnotes

  1. No successful run was found on main (6a02553) during the generation of this report, so 1492bce was used instead as the comparison base. There might be some changes unrelated to this pull request in this report.

  2. 12 benchmarks were run, but are now archived. If they were deleted in another branch, consider rebasing to remove them from the report. Instead if they were added back, click here to restore them.

@graphite-app graphite-app Bot requested a review from a team January 18, 2026 02:19
indietyp
indietyp previously approved these changes Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
github-merge-queue Bot pushed a commit that referenced this pull request Jan 21, 2026
Co-authored-by: hash-worker[bot] <180894564+hash-worker[bot]@users.noreply.github.com>
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot enabled auto-merge January 21, 2026 10:13
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
github-merge-queue Bot pushed a commit that referenced this pull request Jan 21, 2026
Co-authored-by: hash-worker[bot] <180894564+hash-worker[bot]@users.noreply.github.com>
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
github-merge-queue Bot pushed a commit that referenced this pull request Jan 21, 2026
Co-authored-by: hash-worker[bot] <180894564+hash-worker[bot]@users.noreply.github.com>
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@indietyp indietyp added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 21, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jan 21, 2026
@hash-worker hash-worker Bot added this pull request to the merge queue Jan 22, 2026
Copy link
Copy Markdown
Member

@TimDiekmann TimDiekmann left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Requesting changes to prevent Renovate spamming me with failed merges. Feel free to dismiss when resolved.

error: failed to resolve: could not find `ContentVisitor` in `de`
   ┌─ libs/@local/graph/temporal-versioning/src/temporal_bound.rs:11:21
   │
11 │ #[derive(Serialize, Deserialize)]
   │                     ^^^^^^^^^^^
   │
   ┌─ /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/src/private/de.rs:12:10
   │
12 │ #[cfg(any(feature = "std", feature = "alloc"))]
   │          ------------------------------------ found an item that was configured out
   │
   ┌─ /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/src/private/de.rs:14:75
   │
14 │     content_as_str, Content, ContentDeserializer, ContentRefDeserializer, ContentVisitor,
   │                                                                           -------------- found an item that was configured out
   │

@vercel
Copy link
Copy Markdown

vercel Bot commented Jan 24, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
hash Ready Ready Preview, Comment Feb 5, 2026 8:11am
hashdotdesign Ready Ready Preview, Comment Feb 5, 2026 8:11am
hashdotdesign-tokens Ready Ready Preview, Comment Feb 5, 2026 8:11am
petrinaut Ready Ready Preview Feb 5, 2026 8:11am

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Feb 5, 2026

Benchmark results

@rust/hash-graph-benches – Integrations

policy_resolution_large

Function Value Mean Flame graphs
resolve_policies_for_actor user: empty, selectivity: high, policies: 2002 $$27.2 \mathrm{ms} \pm 204 \mathrm{μs}\left({\color{gray}3.05 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: low, policies: 1 $$3.21 \mathrm{ms} \pm 14.8 \mathrm{μs}\left({\color{gray}1.49 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: medium, policies: 1001 $$12.2 \mathrm{ms} \pm 77.5 \mathrm{μs}\left({\color{gray}3.32 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: high, policies: 3314 $$42.2 \mathrm{ms} \pm 302 \mathrm{μs}\left({\color{gray}0.120 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: low, policies: 1 $$14.0 \mathrm{ms} \pm 77.2 \mathrm{μs}\left({\color{gray}3.20 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: medium, policies: 1526 $$23.6 \mathrm{ms} \pm 140 \mathrm{μs}\left({\color{gray}2.51 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: high, policies: 2078 $$42.8 \mathrm{ms} \pm 215 \mathrm{μs}\left({\color{gray}0.918 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: low, policies: 1 $$20.5 \mathrm{ms} \pm 119 \mathrm{μs}\left({\color{gray}4.45 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: medium, policies: 1033 $$28.4 \mathrm{ms} \pm 141 \mathrm{μs}\left({\color{lightgreen}-5.436 \mathrm{\%}}\right) $$ Flame Graph

policy_resolution_medium

Function Value Mean Flame graphs
resolve_policies_for_actor user: empty, selectivity: high, policies: 102 $$3.63 \mathrm{ms} \pm 22.1 \mathrm{μs}\left({\color{gray}0.511 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: low, policies: 1 $$2.79 \mathrm{ms} \pm 10.5 \mathrm{μs}\left({\color{gray}0.461 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: medium, policies: 51 $$3.19 \mathrm{ms} \pm 26.6 \mathrm{μs}\left({\color{gray}2.26 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: high, policies: 269 $$4.94 \mathrm{ms} \pm 25.8 \mathrm{μs}\left({\color{gray}-0.198 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: low, policies: 1 $$3.39 \mathrm{ms} \pm 16.8 \mathrm{μs}\left({\color{gray}2.59 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: medium, policies: 107 $$3.89 \mathrm{ms} \pm 17.3 \mathrm{μs}\left({\color{gray}0.316 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: high, policies: 133 $$4.21 \mathrm{ms} \pm 21.3 \mathrm{μs}\left({\color{gray}-0.654 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: low, policies: 1 $$3.22 \mathrm{ms} \pm 15.5 \mathrm{μs}\left({\color{gray}1.23 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: medium, policies: 63 $$3.85 \mathrm{ms} \pm 25.5 \mathrm{μs}\left({\color{gray}1.72 \mathrm{\%}}\right) $$ Flame Graph

policy_resolution_none

Function Value Mean Flame graphs
resolve_policies_for_actor user: empty, selectivity: high, policies: 2 $$2.37 \mathrm{ms} \pm 10.7 \mathrm{μs}\left({\color{gray}-0.308 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: low, policies: 1 $$2.34 \mathrm{ms} \pm 12.1 \mathrm{μs}\left({\color{gray}2.36 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: medium, policies: 1 $$2.43 \mathrm{ms} \pm 9.15 \mathrm{μs}\left({\color{gray}2.10 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: high, policies: 8 $$2.64 \mathrm{ms} \pm 10.4 \mathrm{μs}\left({\color{gray}2.52 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: low, policies: 1 $$2.54 \mathrm{ms} \pm 11.5 \mathrm{μs}\left({\color{gray}2.83 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: medium, policies: 3 $$2.71 \mathrm{ms} \pm 14.1 \mathrm{μs}\left({\color{gray}1.25 \mathrm{\%}}\right) $$ Flame Graph

policy_resolution_small

Function Value Mean Flame graphs
resolve_policies_for_actor user: empty, selectivity: high, policies: 52 $$2.75 \mathrm{ms} \pm 14.0 \mathrm{μs}\left({\color{gray}1.07 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: low, policies: 1 $$2.39 \mathrm{ms} \pm 8.93 \mathrm{μs}\left({\color{gray}0.992 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: medium, policies: 25 $$2.61 \mathrm{ms} \pm 13.9 \mathrm{μs}\left({\color{gray}2.14 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: high, policies: 94 $$3.07 \mathrm{ms} \pm 15.0 \mathrm{μs}\left({\color{gray}0.081 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: low, policies: 1 $$2.62 \mathrm{ms} \pm 10.2 \mathrm{μs}\left({\color{gray}-0.023 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: medium, policies: 26 $$2.85 \mathrm{ms} \pm 11.6 \mathrm{μs}\left({\color{gray}0.237 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: high, policies: 66 $$2.99 \mathrm{ms} \pm 15.7 \mathrm{μs}\left({\color{gray}1.03 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: low, policies: 1 $$2.61 \mathrm{ms} \pm 11.8 \mathrm{μs}\left({\color{gray}0.237 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: medium, policies: 29 $$2.81 \mathrm{ms} \pm 13.7 \mathrm{μs}\left({\color{gray}0.109 \mathrm{\%}}\right) $$ Flame Graph

read_scaling_complete

Function Value Mean Flame graphs
entity_by_id;one_depth 1 entities $$38.8 \mathrm{ms} \pm 156 \mathrm{μs}\left({\color{gray}2.52 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;one_depth 10 entities $$74.7 \mathrm{ms} \pm 269 \mathrm{μs}\left({\color{gray}-1.626 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;one_depth 25 entities $$42.4 \mathrm{ms} \pm 170 \mathrm{μs}\left({\color{gray}-1.726 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;one_depth 5 entities $$45.5 \mathrm{ms} \pm 202 \mathrm{μs}\left({\color{gray}0.456 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;one_depth 50 entities $$53.0 \mathrm{ms} \pm 308 \mathrm{μs}\left({\color{gray}2.13 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;two_depth 1 entities $$40.9 \mathrm{ms} \pm 232 \mathrm{μs}\left({\color{gray}2.24 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;two_depth 10 entities $$419 \mathrm{ms} \pm 969 \mathrm{μs}\left({\color{gray}0.651 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;two_depth 25 entities $$95.7 \mathrm{ms} \pm 394 \mathrm{μs}\left({\color{gray}2.77 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;two_depth 5 entities $$84.6 \mathrm{ms} \pm 361 \mathrm{μs}\left({\color{gray}0.246 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;two_depth 50 entities $$281 \mathrm{ms} \pm 601 \mathrm{μs}\left({\color{gray}2.27 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;zero_depth 1 entities $$14.7 \mathrm{ms} \pm 71.4 \mathrm{μs}\left({\color{gray}2.80 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;zero_depth 10 entities $$14.8 \mathrm{ms} \pm 76.5 \mathrm{μs}\left({\color{gray}2.40 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;zero_depth 25 entities $$15.5 \mathrm{ms} \pm 81.9 \mathrm{μs}\left({\color{red}5.63 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;zero_depth 5 entities $$14.5 \mathrm{ms} \pm 86.5 \mathrm{μs}\left({\color{gray}2.46 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;zero_depth 50 entities $$17.7 \mathrm{ms} \pm 80.9 \mathrm{μs}\left({\color{gray}0.626 \mathrm{\%}}\right) $$ Flame Graph

read_scaling_linkless

Function Value Mean Flame graphs
entity_by_id 1 entities $$14.5 \mathrm{ms} \pm 66.8 \mathrm{μs}\left({\color{gray}1.25 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 10 entities $$14.4 \mathrm{ms} \pm 67.6 \mathrm{μs}\left({\color{gray}0.866 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 100 entities $$14.6 \mathrm{ms} \pm 72.9 \mathrm{μs}\left({\color{gray}1.55 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 1000 entities $$15.2 \mathrm{ms} \pm 67.4 \mathrm{μs}\left({\color{gray}2.11 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 10000 entities $$22.4 \mathrm{ms} \pm 138 \mathrm{μs}\left({\color{gray}1.76 \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/block/v/1 $$29.5 \mathrm{ms} \pm 274 \mathrm{μs}\left({\color{gray}-1.550 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/book/v/1 $$30.3 \mathrm{ms} \pm 266 \mathrm{μs}\left({\color{gray}3.21 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/building/v/1 $$28.2 \mathrm{ms} \pm 245 \mathrm{μs}\left({\color{gray}-2.144 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/organization/v/1 $$28.9 \mathrm{ms} \pm 254 \mathrm{μs}\left({\color{gray}-0.859 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/page/v/2 $$28.7 \mathrm{ms} \pm 272 \mathrm{μs}\left({\color{gray}-1.546 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/person/v/1 $$29.6 \mathrm{ms} \pm 305 \mathrm{μs}\left({\color{gray}-3.643 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/playlist/v/1 $$29.2 \mathrm{ms} \pm 288 \mathrm{μs}\left({\color{gray}2.84 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/song/v/1 $$29.9 \mathrm{ms} \pm 261 \mathrm{μs}\left({\color{gray}2.66 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/uk-address/v/1 $$28.7 \mathrm{ms} \pm 249 \mathrm{μs}\left({\color{gray}-1.611 \mathrm{\%}}\right) $$ Flame Graph

representative_read_entity_type

Function Value Mean Flame graphs
get_entity_type_by_id Account ID: bf5a9ef5-dc3b-43cf-a291-6210c0321eba $$7.86 \mathrm{ms} \pm 29.1 \mathrm{μs}\left({\color{gray}0.334 \mathrm{\%}}\right) $$ Flame Graph

representative_read_multiple_entities

Function Value Mean Flame graphs
entity_by_property traversal_paths=0 0 $$46.3 \mathrm{ms} \pm 236 \mathrm{μs}\left({\color{gray}2.68 \mathrm{\%}}\right) $$
entity_by_property traversal_paths=255 1,resolve_depths=inherit:1;values:255;properties:255;links:127;link_dests:126;type:true $$93.0 \mathrm{ms} \pm 304 \mathrm{μs}\left({\color{gray}0.921 \mathrm{\%}}\right) $$
entity_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:0;links:0;link_dests:0;type:false $$52.1 \mathrm{ms} \pm 280 \mathrm{μs}\left({\color{gray}1.31 \mathrm{\%}}\right) $$
entity_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:0;links:1;link_dests:0;type:true $$59.4 \mathrm{ms} \pm 378 \mathrm{μs}\left({\color{gray}1.43 \mathrm{\%}}\right) $$
entity_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:2;links:1;link_dests:0;type:true $$67.4 \mathrm{ms} \pm 304 \mathrm{μs}\left({\color{gray}-1.642 \mathrm{\%}}\right) $$
entity_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:2;properties:2;links:1;link_dests:0;type:true $$73.8 \mathrm{ms} \pm 311 \mathrm{μs}\left({\color{gray}1.12 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=0 0 $$49.5 \mathrm{ms} \pm 251 \mathrm{μs}\left({\color{gray}1.08 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=255 1,resolve_depths=inherit:1;values:255;properties:255;links:127;link_dests:126;type:true $$76.2 \mathrm{ms} \pm 385 \mathrm{μs}\left({\color{gray}1.24 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:0;links:0;link_dests:0;type:false $$56.2 \mathrm{ms} \pm 341 \mathrm{μs}\left({\color{gray}0.651 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:0;links:1;link_dests:0;type:true $$63.6 \mathrm{ms} \pm 307 \mathrm{μs}\left({\color{gray}-0.268 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:2;links:1;link_dests:0;type:true $$66.6 \mathrm{ms} \pm 441 \mathrm{μs}\left({\color{gray}2.60 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:2;properties:2;links:1;link_dests:0;type:true $$65.7 \mathrm{ms} \pm 344 \mathrm{μs}\left({\color{gray}1.04 \mathrm{\%}}\right) $$

scenarios

Function Value Mean Flame graphs
full_test query-limited $$135 \mathrm{ms} \pm 582 \mathrm{μs}\left({\color{red}5.00 \mathrm{\%}}\right) $$ Flame Graph
full_test query-unlimited $$137 \mathrm{ms} \pm 563 \mathrm{μs}\left({\color{gray}4.26 \mathrm{\%}}\right) $$ Flame Graph
linked_queries query-limited $$103 \mathrm{ms} \pm 556 \mathrm{μs}\left({\color{gray}0.129 \mathrm{\%}}\right) $$ Flame Graph
linked_queries query-unlimited $$562 \mathrm{ms} \pm 2.16 \mathrm{ms}\left({\color{lightgreen}-5.956 \mathrm{\%}}\right) $$ Flame Graph

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/deps Relates to third-party dependencies (area)

Development

Successfully merging this pull request may close these issues.

2 participants