sql >> Databáze >  >> NoSQL >> MongoDB

Testy Rspec náhodně selžou při analýze objektů ActiveRecord generovaných událostmi Mongoid

V typickém nastavení Mongodb může nastat prodleva mezi úspěšným návratem zápisu do databáze a přečtením těchto dat. Existují dva důvody:

  • Pro zvýšení výkonu se může vrátit "nebezpečný" zápis předtím, než jsou data odeslána na disk.
  • Mongodb používá sady replik a dochází ke zpoždění replikace. Čtení jsou běžně distribuována do replik jako forma vyrovnávání zátěže, takže i když používáte bezpečný zápis, můžete číst z jiného serveru, než na který jste právě zapisovali, a data, která jste právě zapsali, tedy neuvidíte.

Chcete-li zajistit, že si vždy můžete okamžitě zpětně přečíst data, která jste právě zapsali pomocí Mongoid, musíte nastavit možnosti relace databáze consistency: :strong, safe: true , žádný z nich není výchozí.



  1. MongoDB - Full Text Index - Full Text Search - stemming

  2. Mongodb nemohl najít uživatele [e-mail chráněn]

  3. Přidejte pole prvku pole v agregaci MongoDB

  4. Node.js a Mongoose regex dotaz na více polí