GithubHelp home page GithubHelp logo

Comments (1)

ansh avatar ansh commented on June 24, 2024

After some debugging, I was able to fix the raw query that was in the logs before forest-express-mongoose failed.

Original query:

order.aggregate(
  [
    {$match: {created_on: {$ne: null}}},
    {
      $group: {
        _id: {
          year: {$year: [{$subtract: ['$created_on', -18000000]}]},
          month: {$month: [{$subtract: ['$created_on', -18000000]}]},
          day: {$dayOfMonth: [{$subtract: ['$created_on', -18000000]}]},
        },
        created_on: {$first: '$created_on'},
        count: {$sum: 1},
      },
    },
    {$sort: {created_on: 1}},
    {$project: {values: {key: '$_id', value: '$count'}}},
  ],
  {},
);

Fixed query:

db.order.aggregate(
  [
    {$match: {created_on: {$ne: null}}},
    {
      $group: {
        _id: {
          year: {$year: [{$toDate: {$subtract: ['$created_on', -18000000]}}]},
          month: {$month: [{$toDate: {$subtract: ['$created_on', -18000000]}}]},
          day: {$dayOfMonth: [{$toDate: {$subtract: ['$created_on', -18000000]}}]},
        },
        created_on: {$first: '$created_on'},
        count: {$sum: 1},
      },
    },
    {$sort: {created_on: 1}},
    {$project: {values: {key: '$_id', value: '$count'}}},
  ],
  {},
);

Clearly, the fix was adding $toDate in front of $year, $month, and $dayOfMonth. This worked because all 3 of those commands take in only a Date object according to MongoDB. Therefore, we needed to convert our Int64 Epoch time to a Date before passing it into the query.

The question still remains: What is the problem in the Source Code and how to fix it?

from forest-express-mongoose.

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.