mirror of
https://github.com/hasura/graphql-engine.git
synced 2024-12-15 01:12:56 +03:00
df19b15bc8
## Description This PR fixes a bug where the engine does not actually execute root fields in parallel when it is supposed to be doing so. Consider the following GraphQL query that is invoking a typescript function that sleeps for 5 seconds three times: ```graphql query MyQuery { test1: app_hello(name: "test1") test2: app_hello(name: "test2") test3: app_hello(name: "test3") } ``` This should execute in 5 seconds, as these should be run in parallel. Instead, it actually takes 15 seconds as they are run sequentially. Here's a trace from before the change: ![image](https://github.com/hasura/v3-engine/assets/1214352/d52d99e7-b4da-4bbb-bbf9-5155ef568d76) And here's a trace from after the change: ![image](https://github.com/hasura/v3-engine/assets/1214352/26a3ac1f-9e9c-4067-aa1b-62aaa4b293c2) ## Changelog ### Product _(Select all products this will be available in)_ - [x] community-edition - [x] cloud <!-- product : end : DO NOT REMOVE --> ### Type <!-- See changelog structure: https://github.com/hasura/graphql-engine-mono/wiki/Changelog-Guide#structure-of-our-changelog --> _(Select only one. In case of multiple, choose the most appropriate)_ - [ ] highlight - [ ] enhancement - [x] bugfix - [ ] behaviour-change - [ ] performance-enhancement - [ ] security-fix <!-- type : end : DO NOT REMOVE --> ### Changelog entry <!-- - Add a user understandable changelog entry - Include all details needed to understand the change. Try including links to docs or issues if relevant - For Highlights start with a H4 heading (#### <entry title>) - Get the changelog entry reviewed by your team --> Fixed a bug in the engine that prevented the parallel execution of query root fields <!-- changelog-entry : end : DO NOT REMOVE --> <!-- changelog : end : DO NOT REMOVE --> V3_GIT_ORIGIN_REV_ID: 2d4dd195037d49577608892fc6fa0237d8fd26c4 |
||
---|---|---|
.. | ||
auth | ||
custom-connector | ||
engine | ||
execute | ||
lang-graphql | ||
metadata-resolve | ||
metadata-schema-generator | ||
open-dds | ||
schema | ||
utils |