Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
be40574
Avoid re-computing implementers_map in QueryHashVisitor (#6569)
SimonSapin Jan 20, 2025
c3699e2
WIP: Introduce QueryHash and SchemaHash types
IvanGoncharov Jan 21, 2025
612db49
Keep QueryHash::default but with scary comments
goto-bus-stop Jan 21, 2025
7ac072b
Back to using Arc<String> as the representation for schema ID
goto-bus-stop Jan 21, 2025
8d3c02e
Rename SchemaHash -> SchemaId
goto-bus-stop Jan 21, 2025
a600f7b
Introduce `ConfigModeHash` type
goto-bus-stop Jan 21, 2025
43f001f
Update API usage
goto-bus-stop Jan 21, 2025
68a3738
Reintroduce schema_id field to CachingQueryKey
goto-bus-stop Jan 21, 2025
ee1b489
Update two schema aware hash callsites (this may not be all)
goto-bus-stop Jan 21, 2025
d33e40d
Document QueryHash
goto-bus-stop Jan 21, 2025
a0b9dea
next step
IvanGoncharov Jan 21, 2025
866c807
fix error in entity.rs
IvanGoncharov Jan 21, 2025
ffe1b6c
Fix import of QueryHash inside batching code
goto-bus-stop Jan 21, 2025
f046cd8
Merge remote-tracking branch 'origin/1.59.2' into i1g/query_hash_cleanup
goto-bus-stop Jan 21, 2025
8d30e7e
Pass query text to extract_query_information as necessary
goto-bus-stop Jan 21, 2025
50d1829
Remove `cfg(test)` from `Query::empty`
goto-bus-stop Jan 21, 2025
c6aa3af
Fix test assertion
goto-bus-stop Jan 21, 2025
879e71a
Comment how `Request::query_hash` works
goto-bus-stop Jan 21, 2025
594a746
Fix lifetime in BridgeQueryPlanner::call
goto-bus-stop Jan 21, 2025
68aa912
Mark ConfigModeHash pub(crate) to appease linter
goto-bus-stop Jan 21, 2025
9473d13
it's building !!!
IvanGoncharov Jan 21, 2025
c83dd83
Update test
goto-bus-stop Jan 21, 2025
8fe5095
remove "Schema aware query hashing algorithm"
IvanGoncharov Jan 21, 2025
662bb83
Update cache keys in snapshots
IvanGoncharov Jan 21, 2025
941dad3
Update some more snapshots
goto-bus-stop Jan 22, 2025
e2afd1a
Reintroduce operation parsing for query plans loaded from distributed…
goto-bus-stop Jan 22, 2025
1997eb1
Hash the raw query hash bytes
goto-bus-stop Jan 22, 2025
5adc7fc
Fix inject_schema_id
goto-bus-stop Jan 22, 2025
967217a
Make clippy happy!
goto-bus-stop Jan 22, 2025
4882b2a
Snapshot updates for setContext and type conditioned fetching
goto-bus-stop Jan 22, 2025
2c4d371
Update remaining snapshots
goto-bus-stop Jan 22, 2025
671e2da
Use a subgraph serialization without indentation for hashing
goto-bus-stop Jan 22, 2025
73fdc20
SchemaId => SchemaHash
IvanGoncharov Jan 22, 2025
95e7b1c
Merge branch 'dev' into i1g/query_hash_cleanup
goto-bus-stop Jan 22, 2025
cc4e27a
Formatting fix
goto-bus-stop Jan 22, 2025
ab9c21d
update keys in Redis tests
IvanGoncharov Jan 23, 2025
a4404f3
add changelog
IvanGoncharov Jan 23, 2025
13095ac
Merge branch 'dev' into i1g/query_hash_cleanup
IvanGoncharov Jan 23, 2025
23dedd1
Update apollo-router/src/router_factory.rs
IvanGoncharov Jan 23, 2025
67815a5
Re-add test
goto-bus-stop Jan 23, 2025
f4e8b7f
Un-double-Arc SchemaHash in fetch.rs
goto-bus-stop Jan 23, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .changesets/fix_query_hash_speedup.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
### Improve performance of query hashing by using a precomputed schema hash ([PR #6622](https://github.com/apollographql/router/pull/6622))

The router now uses a simpler and faster query hashing algorithm with more predictable CPU and memory usage. This improvement is enabled by using a precomputed hash of the entire schema, rather than computing and hashing the subset of types and fields used by each query.

For more details on why these design decisions were made, please see the [PR description](https://github.com/apollographql/router/pull/6622)

By [@IvanGoncharov](https://github.com/IvanGoncharov) in https://github.com/apollographql/router/pull/6622
4 changes: 2 additions & 2 deletions apollo-router/src/batching.rs
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,14 @@ use crate::error::FetchError;
use crate::error::SubgraphBatchingError;
use crate::graphql;
use crate::plugins::telemetry::otel::span_ext::OpenTelemetrySpanExt;
use crate::query_planner::fetch::QueryHash;
use crate::services::http::HttpClientServiceFactory;
use crate::services::process_batches;
use crate::services::router;
use crate::services::router::body::RouterBody;
use crate::services::subgraph::SubgraphRequestId;
use crate::services::SubgraphRequest;
use crate::services::SubgraphResponse;
use crate::spec::QueryHash;
use crate::Context;

/// A query that is part of a batch.
Expand Down Expand Up @@ -493,14 +493,14 @@ mod tests {
use crate::graphql;
use crate::graphql::Request;
use crate::layers::ServiceExt as LayerExt;
use crate::query_planner::fetch::QueryHash;
use crate::services::http::HttpClientServiceFactory;
use crate::services::router;
use crate::services::router::body;
use crate::services::subgraph;
use crate::services::subgraph::SubgraphRequestId;
use crate::services::SubgraphRequest;
use crate::services::SubgraphResponse;
use crate::spec::QueryHash;
use crate::Configuration;
use crate::Context;
use crate::TestHarness;
Expand Down
6 changes: 3 additions & 3 deletions apollo-router/src/plugin/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ where
Schema::parse_and_validate(supergraph_sdl.to_string(), PathBuf::from("synthetic"))
.expect("failed to parse supergraph schema"),
))
.supergraph_schema_id(crate::spec::Schema::schema_id(&supergraph_sdl).into())
.supergraph_schema_id(crate::spec::Schema::schema_id(&supergraph_sdl).into_inner())
.supergraph_sdl(supergraph_sdl)
.notify(Notify::builder().build())
.build()
Expand All @@ -119,7 +119,7 @@ where
BoxError::from(e.errors.to_string())
})?,
))
.supergraph_schema_id(crate::spec::Schema::schema_id(&supergraph_sdl).into())
.supergraph_schema_id(crate::spec::Schema::schema_id(&supergraph_sdl).into_inner())
.supergraph_sdl(supergraph_sdl)
.notify(Notify::builder().build())
.build()
Expand All @@ -136,7 +136,7 @@ where

PluginInit::fake_builder()
.config(config)
.supergraph_schema_id(crate::spec::Schema::schema_id(&supergraph_sdl).into())
.supergraph_schema_id(crate::spec::Schema::schema_id(&supergraph_sdl).into_inner())
.supergraph_sdl(supergraph_sdl)
.supergraph_schema(supergraph_schema)
.launch_id(Arc::new("launch_id".to_string()))
Expand Down
6 changes: 4 additions & 2 deletions apollo-router/src/plugins/cache/entity.rs
Original file line number Diff line number Diff line change
Expand Up @@ -48,11 +48,11 @@ use crate::json_ext::PathElement;
use crate::plugin::Plugin;
use crate::plugin::PluginInit;
use crate::plugins::authorization::CacheKeyMetadata;
use crate::query_planner::fetch::QueryHash;
use crate::query_planner::OperationKind;
use crate::services::subgraph;
use crate::services::subgraph::SubgraphRequestId;
use crate::services::supergraph;
use crate::spec::QueryHash;
use crate::spec::TYPENAME;
use crate::Context;
use crate::Endpoint;
Expand Down Expand Up @@ -1220,9 +1220,11 @@ pub(crate) fn hash_vary_headers(headers: &http::HeaderMap) -> String {
hex::encode(digest.finalize().as_slice())
}

// XXX(@goto-bus-stop): this doesn't make much sense: QueryHash already includes the operation name.
// This function can be removed outright later at the cost of invalidating all entity caches.
pub(crate) fn hash_query(query_hash: &QueryHash, body: &graphql::Request) -> String {
let mut digest = Sha256::new();
digest.update(&query_hash.0);
digest.update(query_hash.as_bytes());
digest.update(&[0u8; 1][..]);
digest.update(body.operation_name.as_deref().unwrap_or("-").as_bytes());
digest.update(&[0u8; 1][..]);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
---
source: apollo-router/src/plugins/cache/tests.rs
expression: cache_keys
snapshot_kind: text
---
[
{
"key": "version:1.0:subgraph:orga:type:Organization:entity:5811967f540d300d249ab30ae681359a7815fdb5d3dc71a94be1d491006a6b27:hash:ab9056ba140750aa8fe58360172b450fa717e7ea177e4a3c9426fe1291a88da2:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"key": "version:1.0:subgraph:orga:type:Organization:entity:5811967f540d300d249ab30ae681359a7815fdb5d3dc71a94be1d491006a6b27:hash:e734548bbe559d607f045e8fe5b5225543a1093dac991e137d1208a12af536de:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"status": "cached",
"cache_control": "public"
},
{
"key": "version:1.0:subgraph:user:type:Query:hash:0d4d253b049bbea514a54a892902fa4b9b658aedc9b8f2a1308323cdeef3c0ca:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"key": "version:1.0:subgraph:user:type:Query:hash:3e689b15c9cee1f2812c319a66ddbe8bfc452c8ab6759566ed1987cae95178cd:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"status": "cached",
"cache_control": "public"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
---
source: apollo-router/src/plugins/cache/tests.rs
expression: cache_keys
snapshot_kind: text
---
[
{
"key": "version:1.0:subgraph:orga:type:Organization:entity:5811967f540d300d249ab30ae681359a7815fdb5d3dc71a94be1d491006a6b27:hash:ab9056ba140750aa8fe58360172b450fa717e7ea177e4a3c9426fe1291a88da2:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"key": "version:1.0:subgraph:orga:type:Organization:entity:5811967f540d300d249ab30ae681359a7815fdb5d3dc71a94be1d491006a6b27:hash:e734548bbe559d607f045e8fe5b5225543a1093dac991e137d1208a12af536de:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"status": "new",
"cache_control": "public"
},
{
"key": "version:1.0:subgraph:user:type:Query:hash:0d4d253b049bbea514a54a892902fa4b9b658aedc9b8f2a1308323cdeef3c0ca:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"key": "version:1.0:subgraph:user:type:Query:hash:3e689b15c9cee1f2812c319a66ddbe8bfc452c8ab6759566ed1987cae95178cd:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"status": "new",
"cache_control": "public"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
---
source: apollo-router/src/plugins/cache/tests.rs
expression: cache_keys
snapshot_kind: text
---
[
{
"key": "version:1.0:subgraph:orga:type:Organization:entity:5221ff42b311b757445c096c023cee4fefab5de49735e421c494f1119326317b:hash:4913f52405bb614177e7c718d43da695c2f0e7411707c2f77f1c62380153c8d8:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"key": "version:1.0:subgraph:orga:type:Organization:entity:5221ff42b311b757445c096c023cee4fefab5de49735e421c494f1119326317b:hash:5f460b74668616b2388b1afed7af6557ee4a0d60fbca18f3b4c59b8027035f32:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"status": "cached",
"cache_control": "[REDACTED]"
},
{
"key": "version:1.0:subgraph:orga:type:Organization:entity:5811967f540d300d249ab30ae681359a7815fdb5d3dc71a94be1d491006a6b27:hash:4913f52405bb614177e7c718d43da695c2f0e7411707c2f77f1c62380153c8d8:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"key": "version:1.0:subgraph:orga:type:Organization:entity:5811967f540d300d249ab30ae681359a7815fdb5d3dc71a94be1d491006a6b27:hash:5f460b74668616b2388b1afed7af6557ee4a0d60fbca18f3b4c59b8027035f32:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"status": "cached",
"cache_control": "[REDACTED]"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
---
source: apollo-router/src/plugins/cache/tests.rs
expression: cache_keys
snapshot_kind: text
---
[
{
"key": "version:1.0:subgraph:orga:type:Organization:entity:5221ff42b311b757445c096c023cee4fefab5de49735e421c494f1119326317b:hash:4913f52405bb614177e7c718d43da695c2f0e7411707c2f77f1c62380153c8d8:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"key": "version:1.0:subgraph:orga:type:Organization:entity:5221ff42b311b757445c096c023cee4fefab5de49735e421c494f1119326317b:hash:5f460b74668616b2388b1afed7af6557ee4a0d60fbca18f3b4c59b8027035f32:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"status": "new",
"cache_control": "[REDACTED]"
},
{
"key": "version:1.0:subgraph:orga:type:Organization:entity:5811967f540d300d249ab30ae681359a7815fdb5d3dc71a94be1d491006a6b27:hash:4913f52405bb614177e7c718d43da695c2f0e7411707c2f77f1c62380153c8d8:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"key": "version:1.0:subgraph:orga:type:Organization:entity:5811967f540d300d249ab30ae681359a7815fdb5d3dc71a94be1d491006a6b27:hash:5f460b74668616b2388b1afed7af6557ee4a0d60fbca18f3b4c59b8027035f32:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"status": "new",
"cache_control": "[REDACTED]"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
---
source: apollo-router/src/plugins/cache/tests.rs
expression: cache_keys
snapshot_kind: text
---
[
{
"key": "version:1.0:subgraph:orga:type:Organization:entity:5811967f540d300d249ab30ae681359a7815fdb5d3dc71a94be1d491006a6b27:hash:ab9056ba140750aa8fe58360172b450fa717e7ea177e4a3c9426fe1291a88da2:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c:03ac674216f3e15c761ee1a5e255f067953623c8b388b4459e13f978d7c846f4",
"key": "version:1.0:subgraph:orga:type:Organization:entity:5811967f540d300d249ab30ae681359a7815fdb5d3dc71a94be1d491006a6b27:hash:e734548bbe559d607f045e8fe5b5225543a1093dac991e137d1208a12af536de:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c:03ac674216f3e15c761ee1a5e255f067953623c8b388b4459e13f978d7c846f4",
"status": "cached",
"cache_control": "private"
},
{
"key": "version:1.0:subgraph:user:type:Query:hash:0d4d253b049bbea514a54a892902fa4b9b658aedc9b8f2a1308323cdeef3c0ca:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c:03ac674216f3e15c761ee1a5e255f067953623c8b388b4459e13f978d7c846f4",
"key": "version:1.0:subgraph:user:type:Query:hash:3e689b15c9cee1f2812c319a66ddbe8bfc452c8ab6759566ed1987cae95178cd:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c:03ac674216f3e15c761ee1a5e255f067953623c8b388b4459e13f978d7c846f4",
"status": "cached",
"cache_control": "private"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
---
source: apollo-router/src/plugins/cache/tests.rs
expression: cache_keys
snapshot_kind: text
---
[
{
"key": "version:1.0:subgraph:orga:type:Organization:entity:5811967f540d300d249ab30ae681359a7815fdb5d3dc71a94be1d491006a6b27:hash:ab9056ba140750aa8fe58360172b450fa717e7ea177e4a3c9426fe1291a88da2:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c:03ac674216f3e15c761ee1a5e255f067953623c8b388b4459e13f978d7c846f4",
"key": "version:1.0:subgraph:orga:type:Organization:entity:5811967f540d300d249ab30ae681359a7815fdb5d3dc71a94be1d491006a6b27:hash:e734548bbe559d607f045e8fe5b5225543a1093dac991e137d1208a12af536de:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c:03ac674216f3e15c761ee1a5e255f067953623c8b388b4459e13f978d7c846f4",
"status": "cached",
"cache_control": "private"
},
{
"key": "version:1.0:subgraph:user:type:Query:hash:0d4d253b049bbea514a54a892902fa4b9b658aedc9b8f2a1308323cdeef3c0ca:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c:03ac674216f3e15c761ee1a5e255f067953623c8b388b4459e13f978d7c846f4",
"key": "version:1.0:subgraph:user:type:Query:hash:3e689b15c9cee1f2812c319a66ddbe8bfc452c8ab6759566ed1987cae95178cd:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c:03ac674216f3e15c761ee1a5e255f067953623c8b388b4459e13f978d7c846f4",
"status": "cached",
"cache_control": "private"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
---
source: apollo-router/src/plugins/cache/tests.rs
expression: cache_keys
snapshot_kind: text
---
[
{
"key": "version:1.0:subgraph:orga:type:Organization:entity:5811967f540d300d249ab30ae681359a7815fdb5d3dc71a94be1d491006a6b27:hash:ab9056ba140750aa8fe58360172b450fa717e7ea177e4a3c9426fe1291a88da2:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"key": "version:1.0:subgraph:orga:type:Organization:entity:5811967f540d300d249ab30ae681359a7815fdb5d3dc71a94be1d491006a6b27:hash:e734548bbe559d607f045e8fe5b5225543a1093dac991e137d1208a12af536de:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c",
"status": "new",
"cache_control": "private"
},
{
"key": "version:1.0:subgraph:user:type:Query:hash:0d4d253b049bbea514a54a892902fa4b9b658aedc9b8f2a1308323cdeef3c0ca:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c:03ac674216f3e15c761ee1a5e255f067953623c8b388b4459e13f978d7c846f4",
"key": "version:1.0:subgraph:user:type:Query:hash:3e689b15c9cee1f2812c319a66ddbe8bfc452c8ab6759566ed1987cae95178cd:data:d9d84a3c7ffc27b0190a671212f3740e5b8478e84e23825830e97822e25cf05c:03ac674216f3e15c761ee1a5e255f067953623c8b388b4459e13f978d7c846f4",
"status": "new",
"cache_control": "private"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
source: apollo-router/src/plugins/progressive_override/tests.rs
expression: query_plan
snapshot_kind: text
---
{
"data": null,
Expand All @@ -19,7 +20,7 @@ expression: query_plan
"inputRewrites": null,
"outputRewrites": null,
"contextRewrites": null,
"schemaAwareHash": "343157a7d5b7929ebdc0c17cbf0f23c8d3cf0c93a820856d3a189521cc2f24a2",
"schemaAwareHash": "83a61d8e05a2342e4c13c5b518e1e4a5b4cbc405477fce069c784526eb3b1ae5",
"authorization": {
"is_authenticated": false,
"scopes": [],
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
source: apollo-router/src/plugins/progressive_override/tests.rs
expression: query_plan
snapshot_kind: text
---
{
"data": {
Expand All @@ -24,7 +25,7 @@ expression: query_plan
"inputRewrites": null,
"outputRewrites": null,
"contextRewrites": null,
"schemaAwareHash": "df2a0633d70ab97805722bae920647da51b7eb821b06d8a2499683c5c7024316",
"schemaAwareHash": "3c438d69bd20986101e4fb91167d5db4b871b250a5e5b670e19e9305b2756baa",
"authorization": {
"is_authenticated": false,
"scopes": [],
Expand Down Expand Up @@ -63,7 +64,7 @@ expression: query_plan
"inputRewrites": null,
"outputRewrites": null,
"contextRewrites": null,
"schemaAwareHash": "56ac7a7cc11b7f293acbdaf0327cb2b676415eab8343e9259322a1609c90455e",
"schemaAwareHash": "fcec2495ee805f82a5712f74f89797ed678eb5118ff8044a1c8fb232d6dd16df",
"authorization": {
"is_authenticated": false,
"scopes": [],
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
source: apollo-router/src/plugins/expose_query_plan.rs
expression: "serde_json::to_value(response).unwrap()"
snapshot_kind: text
---
{
"data": {
Expand Down Expand Up @@ -69,7 +70,7 @@ expression: "serde_json::to_value(response).unwrap()"
"inputRewrites": null,
"outputRewrites": null,
"contextRewrites": null,
"schemaAwareHash": "45b4beebcbf1df72ab950db7bd278417712b1aa39119317f44ad5b425bdb6997",
"schemaAwareHash": "5c4bde1b693a9d93618856d221a620783601d3e6141991ea1d49763dca5fe94b",
"authorization": {
"is_authenticated": false,
"scopes": [],
Expand Down Expand Up @@ -109,7 +110,7 @@ expression: "serde_json::to_value(response).unwrap()"
"inputRewrites": null,
"outputRewrites": null,
"contextRewrites": null,
"schemaAwareHash": "645f3f8763133d2376e33ab3d1145be7ded0ccc8e94e20aba1fbaa34a51633da",
"schemaAwareHash": "1763ef26b5543dd364a96f6b29f9db6edbbe06ef4b260fd6dd59258cf09134b8",
"authorization": {
"is_authenticated": false,
"scopes": [],
Expand Down Expand Up @@ -156,7 +157,7 @@ expression: "serde_json::to_value(response).unwrap()"
"inputRewrites": null,
"outputRewrites": null,
"contextRewrites": null,
"schemaAwareHash": "a79f69245d777abc4afbd7d0a8fc434137fa4fd1079ef082edf4c7746b5a0fcd",
"schemaAwareHash": "b634e94c76926292e24ea336046389758058cccf227b49917b625adccfc29d07",
"authorization": {
"is_authenticated": false,
"scopes": [],
Expand Down Expand Up @@ -200,7 +201,7 @@ expression: "serde_json::to_value(response).unwrap()"
"inputRewrites": null,
"outputRewrites": null,
"contextRewrites": null,
"schemaAwareHash": "5ad94764f288a41312e07745510bf5dade2b63fb82c3d896f7d00408dbbe5cce",
"schemaAwareHash": "2ff7e653609dee610e4c5e06a666391889af36a0f78ce44a15cf758e4cc897e5",
"authorization": {
"is_authenticated": false,
"scopes": [],
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
source: apollo-router/src/plugins/expose_query_plan.rs
expression: "serde_json::to_value(response).unwrap()"
snapshot_kind: text
---
{
"data": {
Expand Down Expand Up @@ -69,7 +70,7 @@ expression: "serde_json::to_value(response).unwrap()"
"inputRewrites": null,
"outputRewrites": null,
"contextRewrites": null,
"schemaAwareHash": "45b4beebcbf1df72ab950db7bd278417712b1aa39119317f44ad5b425bdb6997",
"schemaAwareHash": "5c4bde1b693a9d93618856d221a620783601d3e6141991ea1d49763dca5fe94b",
"authorization": {
"is_authenticated": false,
"scopes": [],
Expand Down Expand Up @@ -109,7 +110,7 @@ expression: "serde_json::to_value(response).unwrap()"
"inputRewrites": null,
"outputRewrites": null,
"contextRewrites": null,
"schemaAwareHash": "645f3f8763133d2376e33ab3d1145be7ded0ccc8e94e20aba1fbaa34a51633da",
"schemaAwareHash": "1763ef26b5543dd364a96f6b29f9db6edbbe06ef4b260fd6dd59258cf09134b8",
"authorization": {
"is_authenticated": false,
"scopes": [],
Expand Down Expand Up @@ -156,7 +157,7 @@ expression: "serde_json::to_value(response).unwrap()"
"inputRewrites": null,
"outputRewrites": null,
"contextRewrites": null,
"schemaAwareHash": "a79f69245d777abc4afbd7d0a8fc434137fa4fd1079ef082edf4c7746b5a0fcd",
"schemaAwareHash": "b634e94c76926292e24ea336046389758058cccf227b49917b625adccfc29d07",
"authorization": {
"is_authenticated": false,
"scopes": [],
Expand Down Expand Up @@ -200,7 +201,7 @@ expression: "serde_json::to_value(response).unwrap()"
"inputRewrites": null,
"outputRewrites": null,
"contextRewrites": null,
"schemaAwareHash": "5ad94764f288a41312e07745510bf5dade2b63fb82c3d896f7d00408dbbe5cce",
"schemaAwareHash": "2ff7e653609dee610e4c5e06a666391889af36a0f78ce44a15cf758e4cc897e5",
"authorization": {
"is_authenticated": false,
"scopes": [],
Expand Down
Loading