Open In App

How does Query.prototype.maxTimeMS() works in Mongoose ?

Last Updated : 12 Mar, 2021
Improve
Improve
Like Article
Like
Save
Share
Report

The Query.prototype.maxTimeMS() function is used to set the maxTimeMS option. Basically this function tells the MongoDB server to abort if the query or write operation has been running for more than ms milliseconds.
 

Syntax:  

Query.prototype.maxTimeMS()

Parameters: This function has one ms parameter which defines the number of milliseconds.
Return Value: This function returns Query Object.
 

Mongoose Installation:

npm install mongoose

After installing the mongoose module, you can check your mongoose version in command prompt using the command. 

npm mongoose --version

After that, you can just create a folder and add a file for example, index.js as shown below.

Database: The sample database used here is shown below: 
 

Example 1:

index.js




const mongoose = require('mongoose');
  
// Database connection
    useNewUrlParser: true,
    useCreateIndex: true,
    useUnifiedTopology: true
});
  
// User model
const User = mongoose.model('User', { 
    name: { type: String },
    age: { type: Number }
});
  
const query = User.find();
query.maxTimeMS(10000);
  
query.exec(function(err,res){
    if(err) console.log(err.message)
    else console.log(res)
})


The project structure will look like this: 
 

Run index.js file using below command: 

node index.js

Output: 

[
  { _id: 5ebb9129a99bde77b2efb809, name: 'Gourav', age: 10, __v: 0 },
  { _id: 5ebc3669a99bde77b2efb9ba, name: 'Lalit', age: 25, __v: 0 },
  { _id: 5ebc367da99bde77b2efb9bf, name: 'Piyush', age: 5, __v: 0 },
  { _id: 5ebd345f5d2d8a3534b2f391, name: 'Manish', age: 34, __v: 0 }
]

Example 2:

index.js




const express = require('express');
const mongoose = require('mongoose');
const app = express()
  
// Database connection
    useNewUrlParser: true,
    useCreateIndex: true,
    useUnifiedTopology: true
});
  
// User model
const User = mongoose.model('User', { 
    name: { type: String },
    age: { type: Number }
});
  
const query = User.find();
query.maxTimeMS(30000);
  
console.log(query.options)
  
query.exec(function(err,res){
    if(err) console.log(err.message)
    else console.log(res)
})
  
app.listen(3000, function(error ) {
    if(error) console.log(error)
    console.log("Server listening on PORT 3000")
});


The project structure will look like this: 
 

Run index.js file using below command: 

node index.js

Output: 

{ maxTimeMS: 10000 }
Server listening on PORT 3000
[
  { _id: 5ebb9129a99bde77b2efb809, name: 'Gourav', age: 10, __v: 0 },
  { _id: 5ebc3669a99bde77b2efb9ba, name: 'Lalit', age: 25, __v: 0 }, 
  { _id: 5ebc367da99bde77b2efb9bf, name: 'Piyush', age: 5, __v: 0 }, 
  { _id: 5ebd345f5d2d8a3534b2f391, name: 'Manish', age: 34, __v: 0 } 
]

Reference: https://mongoosejs.com/docs/api/query.html#query_Query-maxTimeMS
 



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads