sql >> Database teknologi >  >> NoSQL >> MongoDB

Hvorfor får jeg denne forældede advarsel?! MongoDB

Genindsender fra https://jira.mongodb.org/browse/NODE-1868:

Udfasningsmeddelelserne skyldes sandsynligvis client.connect bliver ringet op flere gange. Samlet set kalder du client.connect flere gange i øjeblikket (fra driver v3.1.13). ) har udefineret adfærd, og det anbefales ikke. Det er vigtigt at bemærke, at når løftet er vendt tilbage fra connect løser, forbliver klienten forbundet, indtil du ringer til client.close :

const client = new MongoClient(...);

client.connect().then(() => {
  // client is now connected.
  return client.db('foo').collection('bar').insertOne({
}).then(() => {
  // client is still connected.

  return client.close();
}).then(() => {
  // client is no longer connected. attempting to use it will result in undefined behavior.
});

Klienten opretholder som standard flere forbindelser til hver server, den er forbundet til, og kan bruges til flere samtidige operationer*. Du burde have det fint med at køre client.connect én gang, og derefter køre dine operationer på klientobjektet

* Bemærk, at klienten IKKE er trådsikker eller gaffelsikker, så den kan ikke deles på tværs af gafler, og den er ikke kompatibel med nodens cluster eller worker_threads moduler.



  1. Sådan filtreres array i underdokument med MongoDB

  2. Forbindelse af en Redis container med en anden container (Docker)

  3. indstille udløb for Hashmap-værdier i Redis?

  4. Forespørgsel efter et felt i et objekt i array med Mongo?