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

Fix debug query plan logging #3376

Merged
merged 3 commits into from
Oct 4, 2019
Merged

Conversation

trevor-scheer
Copy link
Member

@trevor-scheer trevor-scheer commented Oct 4, 2019

This PR fixes a bug where query plan logging only occurred
if shouldShowQueryPlan was true. This boolean is only true
under certain conditions during introspection, meaning that
this debug log was disabled for all regular queries.

This PR opts to only serialize the query plan if either debugging is enabled, or if the Apollo-Query-Plan-Experimental header is set. We then log and/or respond with the query plan as appropriate.

This commit fixes a bug where query plan logging only occurred
if `shouldShowQueryPlan` was true. This boolean is only true
under certain conditions during _introspection only_, meaning that
this debug log was disabled for all regular queries.
@trevor-scheer trevor-scheer merged commit 44d7633 into master Oct 4, 2019
@trevor-scheer trevor-scheer deleted the trevor/fix-gateway-debug-logging branch October 4, 2019 20:47
trevor-scheer added a commit that referenced this pull request Oct 16, 2019
This commit revisits recent changes from PR #3376 which broke
Playground's ability to detect support for the Query Plan view.

Playground's internals decide that QP is supported based on the
response from the first introspection query. The previously mentioned
PR broke this by not providing any response.extensions.__queryPlanExperimental
at all. This makes sense for debug mode, but Playground still needs
some form of hint to know that it's supported and continue sending
the Apollo-Query-Plan-Experimental header.
trevor-scheer added a commit that referenced this pull request Oct 17, 2019
This commit revisits recent changes from PR #3376 which broke
Playground's ability to detect support for the Query Plan view.

Playground's internals decide that QP is supported based on the
response from the first introspection query. The previously mentioned
PR broke this by not providing any response.extensions.__queryPlanExperimental
at all. This makes sense for debug mode, but Playground still needs
some form of hint to know that it's supported and continue sending
the Apollo-Query-Plan-Experimental header.
abernix pushed a commit to apollographql/federation that referenced this pull request Sep 4, 2020
This commit fixes a bug where query plan logging only occurred
if `shouldShowQueryPlan` was true. This boolean is only true
under certain conditions during _introspection only_, meaning that
this debug log was disabled for all regular queries.

Apollo-Orig-Commit-AS: apollographql/apollo-server@44d7633
abernix pushed a commit to apollographql/federation that referenced this pull request Sep 4, 2020
…#3418)

This commit revisits recent changes from PR apollographql/apollo-server#3376 which broke
Playground's ability to detect support for the Query Plan view.

Playground's internals decide that QP is supported based on the
response from the first introspection query. The previously mentioned
PR broke this by not providing any response.extensions.__queryPlanExperimental
at all. This makes sense for debug mode, but Playground still needs
some form of hint to know that it's supported and continue sending
the Apollo-Query-Plan-Experimental header.
Apollo-Orig-Commit-AS: apollographql/apollo-server@7abbb94
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 16, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant