Giter Site home page Giter Site logo

Comments (3)

alexandrebodin avatar alexandrebodin commented on May 2, 2024 3

@Epenance Do you have cache disabled ?

If so we are currently discussing some changes that match your needs at #44

from dataloader.

eugene1g avatar eugene1g commented on May 2, 2024

Not sure about graphql-sequelize, but I handle this in the resolver function with something like this -

import keyBy from 'lodash/keyBy'
import uniq from 'lodash/uniq'
import squel form 'squel'
import pg from 'pg-promise'
//...
const loadRecords = async (askedKeys) => {
  const query = squel.select().from('person').where('id in ?', uniq(askedKeys)).toString()
  const dbRows = await pg.any(query)
  const byId = keyBy(dbRows, row => row.id)
  return askedKeys.map(id => byId[ id ] || null)
}

const myLoader = new DataLoader(loadRecords)

This approach works, however #46 is neater because it handles race condition better.

from dataloader.

leebyron avatar leebyron commented on May 2, 2024

Closing this aging issue

I'll work on getting #46 polished up and ready to land since that would fix this issue, though I encourage either not turning off caching or doing this deduping within your batch function.

from dataloader.

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.