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

feat(gateway): support alternate query plan cache implementations #4026

Closed
wants to merge 5 commits into from

Conversation

trevor-scheer
Copy link
Member

@trevor-scheer trevor-scheer commented Apr 23, 2020

This commit allows the user to specify their own cache to be used by the gateway for query plan caching. One intended use case, for example, is a distributed cache to be shared among a number of gateways.

For distributed cache implementations, you may find these packages useful!

A user provided cache must implement the QueryPlanCache interface, which can be seen here within the PR for reference.

This commit allows the user to specify their own cache
to be used by the gateway for the query plan caching.

One intended use case, for example, is a distributed
cache to be shared among a number of gateways.

A user provided cache must implement the
`TestableKeyValueCache` interface which can be seen
here for reference:

https://github.com/apollographql/apollo-server/blob/83a840042424459bc612de32ca3a508560886c23/packages/apollo-server-caching/src/KeyValueCache.ts#L16-L23
@abernix abernix self-assigned this Apr 24, 2020
@abernix
Copy link
Member

abernix commented Sep 16, 2020

Hi @trevor-scheer!,

This is a semi-automated message. Apologies for the lack of personal detail. I’d encourage reading the rest of this message but, if you're busy, hopefully this is as easy for you — or someone who is willing to own the contribution — as pushing the button later in this message to re-create this PR, from an auto-migrated branch, on the new Federation repository. If you have time, read on!

We’re in the process of moving federation-related concerns out of this repository (where it has historically lived) into a new home specifically for Apollo Federation. This PR is affected by the transition since it touches code which has been moved.

I’ve done some preparations to make this as easy as possible, but we’ll need to close this PR, and I could use your help in re-opening it on the new Apollo Federation repository.

In apollographql/federation#134 (which has a lot more details, if you’re interested), we introduced the same code that was in this repository to the new Federation repository (maintaining its history) and removed the code from this repository in #4561.

While this PR still needs to get reviewed and approved to land, it should no longer live in this repository in its current state since it cannot merge in anymore. To facilitate the movement of this PR to the new home, I’ve automatically generated branches on the new repository using the same commit authorship and messages that you originally included on this PR.

Pull-requests can’t be moved on GitHub in the same way Issues can be. While I could just create the PRs from these new branches too, the contribution belongs to you!


Original PR author only: Click this button to open a new PR from the auto-created apollo-server-import/pr-4026 branch on the new Apollo Federation repository

Original PR author: Click here to re-create this PR on the Federation repository

(The code and your commits should be the same and you will have an opportunity to confirm, but this way you can continue to be the author and track its progress on the new Federation repository!)


There’s no easy way to bring over any existing comments on this PR, so I encourage you to copy and paste those onto the new issue if possible.

Overall, I hope this process is relatively easy for you while maintaining your commit contribution authorship. I apologize for any inconvenience caused by this shuffle, but please ping me if I can help in any way!

🚀

@abernix abernix closed this Sep 16, 2020
@abernix abernix deleted the trevor/gateway-qp-cache branch September 21, 2020 11:13
@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.

2 participants