Comments (3)
Hi, which apollo client version are you using, currently?
from apollo-client.
Hi Olivier,
you are right that our recommendation to reproduce this old behaviour is to start with cache-and-network
and then use a nextFetchPolicy
of cache-first
.
Your query will immediately move over to the new fetchPolicy
once the request is started, so that gets me thinking that this might not be your problem here.
There are situations where even with a fetchPolicy
of cache-first
, a mutation triggers an outgoing query. Namely, if the mutation (or another query) overwrites a part of the cache with data that is not sufficiently complete to answer your initial query.
That would usually happen if your request and mutation somehow overlap, and for some reason your cache cannot be normalized.
When you inspect the cache in the devtools, is is normalized properly? If not, you might be missing id
fields in your queries in some places 🤔
from apollo-client.
Hi,
Ok that clears things up a bit. Makes me think that the change in behaviour is then likely caused by the change in InMemoryCache merge, but this will likely require a lot more investigation on our side because we were relying on that mechanism in a lot of places. I believe this will prevent us from upgrading to Apollo Client 3 in the foreseeable future.
Thanks!
from apollo-client.
Related Issues (20)
- AutoCleanedWeakCache causes failure when running tests in fakeAsync zone HOT 4
- useQuery fails to resolve ssr renderPromise due to JSON.stringify reordering HOT 6
- useSuspenseQuery returns an error instead of throwing an exception HOT 6
- Initializing ApolloClient before DataDog RUM causes GraphQL calls to not have the correct headers HOT 4
- Skipped Query returns outdated data after cache clearing HOT 6
- Merge function at the type level not working (+ suggested fix) HOT 12
- Unexpected Data Fetching with `useBackgroundQuery`, StrictMode, `fetchPolicy`: `network-only` (or `no-cache`), and state changes HOT 5
- When use the Apollo Client server side rendering, How to share the cache in cluster server (k8s)? ( did we have file cache? or db cache? ) HOT 2
- Feedback for schema-driven testing utilities HOT 1
- Add `subscribeToMore` functionality to `useQueryRefHandlers`, `useBackgroundQuery`
- [Docs] Anchor links seem to be stripped HOT 4
- Incomprehensible type mismatch with query generics HOT 3
- Changes to `context` cause refetches in `useQuery`
- Add an option in ApolloClient constructor to return a deep copy of query results (or a way to globally transform results after the caching step) HOT 2
- Potentially unintentionally large AoE breaking changing to typescript `MockedResponse` in type 3.9 HOT 4
- clearStore causes a crash when there is an active query HOT 1
- Getting A on the result.data HOT 1
- BatchHTTPLink is not monitoring friendly HOT 5
- Support extensions in useSubscription HOT 1
- React functionality 'useContext' is not available in this environment [Nextjs app] HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from apollo-client.