Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

316
Views
DeprecationWarning: Listening to events on the Db class has been deprecated and will be removed in the next major version

I am using mongoose and mocha for MongoDB schema design and API development I am getting this warning... what does this mean, how it will affect me and what is the fix??

Below the actual warning text:

(node:9872) DeprecationWarning: Listening to events on the Db class has been deprecated and will be removed in the next major version.

over 4 years ago · Santiago Trujillo
6 answers
Answer question

0

For all those looking for an answer for this, there is a question posted on Mongodb forum and the answer is acknowledged by Mongodb concerned person.

The answer given by @kmgt is correct. The error can be ignored safely and will be fixed in upcoming release of Mongodb Nodejs driver or downgrading Mongoose version to 5.11.15 will help.

(node:44612) DeprecationWarning: Listening to events on the Db class has been deprecated and will be removed in the next major version

over 4 years ago · Santiago Trujillo Report

0

If you are using mongoose version 5.11.16 or a higher version, you will see this error. You can solve this issue by downgrading it to version 5.11.15.

npm uninstall mongoose

npm i mongoose@5.11.15

Although this is being discussed in the community and many comment sections and it is a warning because of a compatibility bug and it might not harm to ignore it. It is suggested that they will fix it in the next update.

over 4 years ago · Santiago Trujillo Report

0

Same Error enter image description here

But As far as I know its a new version compatibility bug, after searching about this current bug version, I found this comment session and according to one of them, it is safe to ignore this warning.

over 4 years ago · Santiago Trujillo Report

0

UPDATE

mongodb@3.6.5 is out.

Just update mongodb driver and mongoose:

npm i mongodb mongoose

This is caused by the mongodb@3.6.4 native driver which is used by mongoose.

#1 You can downgrade mongodb to version 3.6.3 (described here).

#2 Or downgrade mongoose from 5.11.16 back to 5.11.15:

npm uninstall mongoose
npm install mongoose@5.11.15

#3 Or just wait for the release of mongodb@3.6.5.

over 4 years ago · Santiago Trujillo Report

0

You can use mongoose version 5.11.13

over 4 years ago · Santiago Trujillo Report

0

OK so I found a fix for this problem.

Task : Upload Image on mongoDB as binary data, using buckets, chunks etc.

Reference URL

Code:

const express = require("express");
const router = express.Router();
const User = require('../models/user');
const grid = require('gridfs-stream');
const GridFsStorage = require('multer-gridfs-storage');
const util = require("util");
const crypto = require('crypto');
const path = require('path');
const methodOverride = require('method-override');
const bodyParser = require('body-parser');
const dotenv = require("dotenv").config({path: "./config/config.env"});
const multer = require('multer');


const storage = new GridFsStorage({
    url: process.env.MONGO_URI,

    options: {
        useUnifiedTopology: true
    },
    file: (req, file) => {
        return new Promise((resolve, reject) => {
            crypto.randomBytes(16, (err, buf) => {
                if (err) {
                    return reject(err);
                }
                const filename = buf.toString('hex') + path.extname(file.originalname);
                const fileInfo = {
                    filename: filename,
                    bucketName: 'uploads'
                };
                resolve(fileInfo);
            });
        });
    }


});
var uploadFile = multer({storage: storage}).single("file");
var uploadFilesMiddleware = util.promisify(uploadFile);
module.exports = uploadFilesMiddleware;

Problem:

Deprecation Warning Listening to events on the Db class has been deprecated and will be removed in the next major version.

Fix:

So most probably the problem is not because of you. It is in the package itself. (check out the reference link above)

  1. Go to node_modules (it is that one folder with a lot of files) folder in your node_js application.

  2. Go to multer-gridfs-storage (inside node_modules)

  3. Go to lib folder (inside multer-gridfs-storage)

  4. Open gridfs.js

  5. Find this comment (// This are all the events that emit errors)

  6. Replace This

    this.db .on('error', errEvent) .on('parseError', errEvent) .on('timeout', errEvent) .on('close', errEvent);

With this

this.client
    .on('error', errEvent)
    .on('parseError', errEvent)
    .on('timeout', errEvent)
    .on('close', errEvent);

Basically change replace 'db' with 'client'.

You can also go to the official page and check out the current issues there it is clearly mentioned that multer-gridfs-storage has debrication waring issue.

Issue Link

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!