Populate entity's external fields in inventory subgraph#894
Populate entity's external fields in inventory subgraph#894
Conversation
💻 Website PreviewThe latest changes are available as preview in: https://712c0679.federation-gateway-benchmark.pages.dev |
Overview for:
|
| Gateway | RPS ⬇️ | Requests | Duration | Notes |
|---|---|---|---|---|
| hive-router | 1685 | 101548 total, 0 failed | avg: 29ms, p95: 51ms | ✅ |
| grafbase | 1475 | 89159 total, 0 failed | avg: 33ms, p95: 57ms | ✅ |
| cosmo | 605 | 36647 total, 0 failed | avg: 82ms, p95: 121ms | ✅ |
| hive-gateway-router-runtime | 580 | 35286 total, 0 failed | avg: 85ms, p95: 114ms | ❌ 1 unexpected GraphQL errors |
| apollo-router | 272 | 16618 total, 0 failed | avg: 177ms, p95: 288ms | ❌ 16518 unexpected GraphQL errors, non-compatible response structure (50) |
| hive-gateway | 209 | 12842 total, 0 failed | avg: 233ms, p95: 526ms | ❌ 1422 unexpected GraphQL errors |
| apollo-gateway | 114 | 7014 total, 0 failed | avg: 427ms, p95: 526ms | ❌ 6914 unexpected GraphQL errors, non-compatible response structure (50) |
Summary for: hive-router
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
checks.........................: 100.00% ✓ 304344 ✗ 0
data_received..................: 8.9 GB 147 MB/s
data_sent......................: 118 MB 2.0 MB/s
http_req_blocked...............: avg=5.33µs min=1.18µs med=2.57µs max=9.51ms p(90)=3.73µs p(95)=4.47µs p(99.9)=93.96µs
http_req_connecting............: avg=2.27µs min=0s med=0s max=9.48ms p(90)=0s p(95)=0s p(99.9)=0s
http_req_duration..............: avg=29.28ms min=1.91ms med=26.9ms max=434.04ms p(90)=44.6ms p(95)=51.09ms p(99.9)=90.41ms
{ expected_response:true }...: avg=29.28ms min=1.91ms med=26.9ms max=434.04ms p(90)=44.6ms p(95)=51.09ms p(99.9)=90.41ms
http_req_failed................: 0.00% ✓ 0 ✗ 101548
http_req_receiving.............: avg=118.24µs min=24.6µs med=43.71µs max=174.65ms p(90)=104.75µs p(95)=337.18µs p(99.9)=12.26ms
http_req_sending...............: avg=102.69µs min=5.2µs med=10.33µs max=236.75ms p(90)=31.42µs p(95)=126.02µs p(99.9)=13.62ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s p(99.9)=0s
http_req_waiting...............: avg=29.06ms min=1.87ms med=26.74ms max=416.78ms p(90)=44.22ms p(95)=50.68ms p(99.9)=89.43ms
http_reqs......................: 101548 1685.460024/s
iteration_duration.............: avg=29.56ms min=3.64ms med=27.15ms max=448.89ms p(90)=44.86ms p(95)=51.35ms p(99.9)=91.09ms
iterations.....................: 101448 1683.800258/s
success_rate...................: 100.00% ✓ 101448 ✗ 0
vus............................: 50 min=50 max=50
vus_max........................: 50 min=50 max=50
Performance Overview
HTTP Overview
Summary for: grafbase
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
checks.........................: 100.00% ✓ 267177 ✗ 0
data_received..................: 7.8 GB 129 MB/s
data_sent......................: 104 MB 1.7 MB/s
http_req_blocked...............: avg=11.2µs min=1.21µs med=2.96µs max=18.77ms p(90)=4.25µs p(95)=5.2µs p(99.9)=122.7µs
http_req_connecting............: avg=7.49µs min=0s med=0s max=18.74ms p(90)=0s p(95)=0s p(99.9)=0s
http_req_duration..............: avg=33.33ms min=3.03ms med=30.29ms max=534.19ms p(90)=50.53ms p(95)=57.26ms p(99.9)=94.38ms
{ expected_response:true }...: avg=33.33ms min=3.03ms med=30.29ms max=534.19ms p(90)=50.53ms p(95)=57.26ms p(99.9)=94.38ms
http_req_failed................: 0.00% ✓ 0 ✗ 89159
http_req_receiving.............: avg=157.6µs min=26.9µs med=48.98µs max=302.49ms p(90)=158.55µs p(95)=406.2µs p(99.9)=16.5ms
http_req_sending...............: avg=139.46µs min=5.62µs med=11.81µs max=468.52ms p(90)=49.68µs p(95)=143.98µs p(99.9)=18.3ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s p(99.9)=0s
http_req_waiting...............: avg=33.04ms min=2.97ms med=30.08ms max=511.4ms p(90)=50.03ms p(95)=56.8ms p(99.9)=90.64ms
http_reqs......................: 89159 1475.488736/s
iteration_duration.............: avg=33.68ms min=6.4ms med=30.58ms max=596.41ms p(90)=50.82ms p(95)=57.56ms p(99.9)=96.43ms
iterations.....................: 89059 1473.83384/s
success_rate...................: 100.00% ✓ 89059 ✗ 0
vus............................: 50 min=50 max=50
vus_max........................: 50 min=50 max=50
Performance Overview
HTTP Overview
Summary for: cosmo
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
checks.........................: 100.00% ✓ 109641 ✗ 0
data_received..................: 3.2 GB 53 MB/s
data_sent......................: 43 MB 704 kB/s
http_req_blocked...............: avg=20.81µs min=1.45µs med=2.88µs max=23.04ms p(90)=4.42µs p(95)=5.52µs p(99.9)=7.65ms
http_req_connecting............: avg=16.38µs min=0s med=0s max=23.02ms p(90)=0s p(95)=0s p(99.9)=7.4ms
http_req_duration..............: avg=81.53ms min=3.04ms med=79.95ms max=605.83ms p(90)=110.99ms p(95)=121ms p(99.9)=361.55ms
{ expected_response:true }...: avg=81.53ms min=3.04ms med=79.95ms max=605.83ms p(90)=110.99ms p(95)=121ms p(99.9)=361.55ms
http_req_failed................: 0.00% ✓ 0 ✗ 36647
http_req_receiving.............: avg=185.28µs min=33.22µs med=78.28µs max=378.27ms p(90)=161.88µs p(95)=421.01µs p(99.9)=16.34ms
http_req_sending...............: avg=67.19µs min=6.73µs med=11.67µs max=369.89ms p(90)=32.14µs p(95)=135.62µs p(99.9)=4.07ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s p(99.9)=0s
http_req_waiting...............: avg=81.28ms min=2.96ms med=79.68ms max=594.45ms p(90)=110.74ms p(95)=120.77ms p(99.9)=354.23ms
http_reqs......................: 36647 605.138558/s
iteration_duration.............: avg=82.08ms min=5.32ms med=80.31ms max=638.1ms p(90)=111.34ms p(95)=121.41ms p(99.9)=389.73ms
iterations.....................: 36547 603.487295/s
success_rate...................: 100.00% ✓ 36547 ✗ 0
vus............................: 50 min=50 max=50
vus_max........................: 50 min=50 max=50
Performance Overview
HTTP Overview
Summary for: hive-gateway-router-runtime
K6 Output
✓ response code was 200
✗ no graphql errors
↳ 99% — ✓ 35185 / ✗ 1
✓ valid response structure
checks.........................: 99.99% ✓ 105557 ✗ 1
data_received..................: 3.1 GB 51 MB/s
data_sent......................: 41 MB 675 kB/s
http_req_blocked...............: avg=25.23µs min=1.24µs med=3.01µs max=21.62ms p(90)=4.64µs p(95)=5.91µs p(99.9)=12.97ms
http_req_connecting............: avg=20.56µs min=0s med=0s max=21.06ms p(90)=0s p(95)=0s p(99.9)=12.53ms
http_req_duration..............: avg=84.72ms min=5.21ms med=82.35ms max=600.11ms p(90)=104.79ms p(95)=113.51ms p(99.9)=385.54ms
{ expected_response:true }...: avg=84.72ms min=5.21ms med=82.35ms max=600.11ms p(90)=104.79ms p(95)=113.51ms p(99.9)=385.54ms
http_req_failed................: 0.00% ✓ 0 ✗ 35286
http_req_receiving.............: avg=114.54µs min=26.96µs med=55.85µs max=19.8ms p(90)=122.67µs p(95)=318.62µs p(99.9)=6.89ms
http_req_sending...............: avg=112.12µs min=5.7µs med=11.71µs max=462.63ms p(90)=32.91µs p(95)=135.22µs p(99.9)=7.29ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s p(99.9)=0s
http_req_waiting...............: avg=84.49ms min=5.16ms med=82.2ms max=599.18ms p(90)=104.54ms p(95)=113.27ms p(99.9)=358.23ms
http_reqs......................: 35286 580.782168/s
iteration_duration.............: avg=85.32ms min=13.45ms med=82.68ms max=658.6ms p(90)=105.16ms p(95)=113.91ms p(99.9)=405.86ms
iterations.....................: 35186 579.13624/s
success_rate...................: 99.99% ✓ 35185 ✗ 1
vus............................: 50 min=50 max=50
vus_max........................: 50 min=50 max=50
Performance Overview
HTTP Overview
Summary for: apollo-router
K6 Output
✓ response code was 200
✗ no graphql errors
↳ 0% — ✓ 0 / ✗ 16518
✗ valid response structure
↳ 99% — ✓ 16468 / ✗ 50
checks.........................: 66.56% ✓ 32986 ✗ 16568
data_received..................: 1.7 GB 28 MB/s
data_sent......................: 19 MB 317 kB/s
http_req_blocked...............: avg=20.2µs min=1.88µs med=3.79µs max=10.15ms p(90)=6.32µs p(95)=7.78µs p(99.9)=6.81ms
http_req_connecting............: avg=15.13µs min=0s med=0s max=10.11ms p(90)=0s p(95)=0s p(99.9)=6.76ms
http_req_duration..............: avg=177.17ms min=6.86ms med=168.7ms max=557.38ms p(90)=248.36ms p(95)=287.94ms p(99.9)=462.5ms
{ expected_response:true }...: avg=177.17ms min=6.86ms med=168.7ms max=557.38ms p(90)=248.36ms p(95)=287.94ms p(99.9)=462.5ms
http_req_failed................: 0.00% ✓ 0 ✗ 16618
http_req_receiving.............: avg=289.36µs min=29.53µs med=60.29µs max=99.96ms p(90)=118.08µs p(95)=332.28µs p(99.9)=37.57ms
http_req_sending...............: avg=1.41ms min=8.07µs med=15.1µs max=154.82ms p(90)=1.84ms p(95)=6.44ms p(99.9)=80.61ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s p(99.9)=0s
http_req_waiting...............: avg=175.46ms min=6.81ms med=167.39ms max=556.98ms p(90)=245.62ms p(95)=285.62ms p(99.9)=461.84ms
http_reqs......................: 16618 272.229403/s
iteration_duration.............: avg=181.82ms min=64.31ms med=171.59ms max=864.13ms p(90)=252.54ms p(95)=292.68ms p(99.9)=738.13ms
iterations.....................: 16518 270.591243/s
success_rate...................: 0.00% ✓ 0 ✗ 16518
vus............................: 25 min=25 max=50
vus_max........................: 50 min=50 max=50
Performance Overview
HTTP Overview
Summary for: hive-gateway
K6 Output
✓ response code was 200
✗ no graphql errors
↳ 88% — ✓ 11320 / ✗ 1422
✓ valid response structure
checks.........................: 96.28% ✓ 36804 ✗ 1422
data_received..................: 1.2 GB 19 MB/s
data_sent......................: 15 MB 244 kB/s
http_req_blocked...............: avg=66.23µs min=1.23µs med=3.03µs max=22.89ms p(90)=5.21µs p(95)=6.71µs p(99.9)=20.29ms
http_req_connecting............: avg=61.01µs min=0s med=0s max=22.83ms p(90)=0s p(95)=0s p(99.9)=20.21ms
http_req_duration..............: avg=232.95ms min=7.22ms med=170.22ms max=2.08s p(90)=408.04ms p(95)=525.92ms p(99.9)=2.05s
{ expected_response:true }...: avg=232.95ms min=7.22ms med=170.22ms max=2.08s p(90)=408.04ms p(95)=525.92ms p(99.9)=2.05s
http_req_failed................: 0.00% ✓ 0 ✗ 12842
http_req_receiving.............: avg=147.07µs min=29.23µs med=66.88µs max=51.48ms p(90)=149.75µs p(95)=364.13µs p(99.9)=8.51ms
http_req_sending...............: avg=306.31µs min=5.45µs med=12.18µs max=389.12ms p(90)=45.07µs p(95)=240.57µs p(99.9)=40.21ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s p(99.9)=0s
http_req_waiting...............: avg=232.5ms min=7.1ms med=169.91ms max=2.08s p(90)=407.32ms p(95)=525.48ms p(99.9)=2.05s
http_reqs......................: 12842 209.651245/s
iteration_duration.............: avg=235.93ms min=35.72ms med=171.1ms max=2.08s p(90)=411.65ms p(95)=533.93ms p(99.9)=2.05s
iterations.....................: 12742 208.018701/s
success_rate...................: 88.84% ✓ 11320 ✗ 1422
vus............................: 50 min=0 max=50
vus_max........................: 50 min=50 max=50
Performance Overview
HTTP Overview
Summary for: apollo-gateway
K6 Output
✓ response code was 200
✗ no graphql errors
↳ 0% — ✓ 0 / ✗ 6914
✗ valid response structure
↳ 99% — ✓ 6864 / ✗ 50
checks.........................: 66.42% ✓ 13778 ✗ 6964
data_received..................: 617 MB 10 MB/s
data_sent......................: 8.2 MB 133 kB/s
http_req_blocked...............: avg=37.43µs min=1.34µs med=4.12µs max=9.23ms p(90)=6.23µs p(95)=7.07µs p(99.9)=7.72ms
http_req_connecting............: avg=32.65µs min=0s med=0s max=9.19ms p(90)=0s p(95)=0s p(99.9)=7.69ms
http_req_duration..............: avg=426.62ms min=7.44ms med=423.29ms max=915.77ms p(90)=499.31ms p(95)=525.59ms p(99.9)=815.85ms
{ expected_response:true }...: avg=426.62ms min=7.44ms med=423.29ms max=915.77ms p(90)=499.31ms p(95)=525.59ms p(99.9)=815.85ms
http_req_failed................: 0.00% ✓ 0 ✗ 7014
http_req_receiving.............: avg=75.61µs min=32.33µs med=64.35µs max=6.95ms p(90)=104.67µs p(95)=120.73µs p(99.9)=1.06ms
http_req_sending...............: avg=164.68µs min=6.39µs med=15.99µs max=209.01ms p(90)=37.24µs p(95)=694.26µs p(99.9)=5.14ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s p(99.9)=0s
http_req_waiting...............: avg=426.38ms min=7.32ms med=422.99ms max=914.65ms p(90)=499.1ms p(95)=525.2ms p(99.9)=814.64ms
http_reqs......................: 7014 114.656608/s
iteration_duration.............: avg=435.07ms min=97.7ms med=425.74ms max=992.26ms p(90)=502.51ms p(95)=530.54ms p(99.9)=834.3ms
iterations.....................: 6914 113.021926/s
success_rate...................: 0.00% ✓ 0 ✗ 6914
vus............................: 38 min=38 max=50
vus_max........................: 50 min=50 max=50
Performance Overview
HTTP Overview
The shippingEstimate was always returning null even though it should not. Could lead to false-negatives in tests.
https://async-graphql.github.io/async-graphql/en/apollo_federation.html#requires
Also
Changed the CI to leave comments on PRs also when running the benchmarks on the hosted runnerNot working ATM.