Dalam pengaturan Mongodb yang khas, mungkin ada penundaan antara saat penulisan database berhasil kembali dan saat data tersebut dapat dibaca. Ada dua alasan untuk ini:
- Untuk peningkatan performa, penulisan "tidak aman" dapat ditampilkan sebelum data dikomit ke disk.
- Mongodb menggunakan set replika dan ada penundaan replikasi. Biasanya pembacaan didistribusikan ke replika sebagai bentuk penyeimbangan beban, jadi meskipun Anda menggunakan penulisan yang aman, Anda mungkin membaca dari server yang berbeda dari server yang baru saja Anda tulis sehingga tidak melihat data yang baru saja Anda tulis.
Untuk memastikan bahwa Anda selalu dapat segera membaca kembali data yang baru saja Anda tulis menggunakan Mongoid, Anda perlu mengatur opsi sesi database consistency: :strong, safe: true
, keduanya bukan default.