Giter Club home page Giter Club logo

Comments (3)

jeel2308 avatar jeel2308 commented on May 23, 2024

Hi, which apollo client version are you using, currently?

from apollo-client.

phryneas avatar phryneas commented on May 23, 2024

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.

olivierlauzon85 avatar olivierlauzon85 commented on May 23, 2024

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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.