-
Type: Bug
-
Resolution: Done
-
Priority: Unknown
-
None
-
Affects Version/s: None
-
Component/s: None
-
Empty show more show less
-
Not Needed
What problem are you facing?
Getting the below error from listCollections function when trying to fetch the collections from an Atlas connection. This is not happening for other mongo connections.
const mongoClient = require('mongodb').MongoClient; const url = 'mongodb+srv://vidya:vidya%402219@cluster0.ea8nbt4.mongodb.net'; //'mongodb://localhost:27017' console.log(`> Connecting to mongoDB @ ${url}`); mongoClient.connect(url, { useNewUrlParser: true, useUnifiedTopology: true }) .then(client => { if (!client) { console.log('> Failed to connect mongoDB - no client'); } else { console.log('> Connected'); db = client.db('test'); db.listCollections({ name: { $not: { $regex: /system.+$/i } } }).toArray() .then(collections => { console.log(collections); client.close(); }); } }).catch(err => { console.log(`> Failed to connect mongoDB - ${err}`); process.exit(); });
error:
MongoServerError: can't get regex from filter doc Error parsing value [{$not [{$regex {"pattern": "system.+$", "options": "i"}}]}] to RegEx: Must specify $regex field at Connection.onMessage (/Users/vidyasagar/Desktop/error mongodb/node_modules/mongodb/lib/cmap/connection.js:210:30) at MessageStream.<anonymous> (/Users/vidyasagar/Desktop/error mongodb/node_modules/mongodb/lib/cmap/connection.js:63:60) at MessageStream.emit (node:events:378:20) at processIncomingData (/Users/vidyasagar/Desktop/error mongodb/node_modules/mongodb/lib/cmap/message_stream.js:132:20) at MessageStream._write (/Users/vidyasagar/Desktop/error mongodb/node_modules/mongodb/lib/cmap/message_stream.js:33:9) at writeOrBuffer (node:internal/streams/writable:400:12) at _write (node:internal/streams/writable:341:10) at MessageStream.Writable.write (node:internal/streams/writable:345:10) at TLSSocket.ondata (node:internal/streams/readable:750:22) at TLSSocket.emit (node:events:378:20) { ok: 0, code: 8000, codeName: 'AtlasError', [Symbol(errorLabels)]: Set(0) {} }
What driver and relevant dependency versions are you using?
- Node version: 15.8.0
- Mongo DB version: 5.0.4
- mongodb driver npm package: 4.8.0
Steps to reproduce?
- Create an Atlas free connection
- Use the Atlas connection url and connect to Mongo DB
- list the collections with a regex
- see error
- depends on
-
NODE-4456 Investigate NODE-4455 - Error when using regex to get the collections for an Atlas connection
- Closed