При типична настройка на Mongodb може да има забавяне между момента, в който записът в базата данни се връща успешно, и момента, в който тези данни могат да бъдат прочетени. Има две причини за това:
- За повишаване на производителността, „несигурно“ записване може да се върне преди данните да бъдат записани на диска.
- Mongodb използва комплекти реплики и има забавяне на репликацията. Обикновено четенията се разпределят към репликите като форма на балансиране на натоварването, така че дори и да използвате безопасно запис, може да четете от различен сървър от този, на който току-що сте писали, и по този начин да не виждате данните, които току-що сте написали.
За да сте сигурни, че винаги можете незабавно да прочетете обратно данните, които току-що сте написали с помощта на Mongoid, трябва да зададете опциите на сесията на базата данни consistency: :strong, safe: true
, нито един от които не е по подразбиране.