I en typisk Mongodb-opsætning kan der være en forsinkelse mellem hvornår en databaseskrivning returnerer med succes, og hvornår disse data kan læses. Der er to grunde til dette:
- For ydeevneforbedringer kan en "usikker" skrivning vende tilbage, før dataene er overført til disken.
- Mongodb bruger replikasæt, og der er en replikeringsforsinkelse. Almindeligvis bliver læsninger distribueret til replikaerne som en form for belastningsbalancering, så selvom du bruger en sikker skrivning, kan du læse fra en anden server end den du lige har skrevet til og dermed ikke se de data, du lige har skrevet.
For at sikre, at du altid umiddelbart kan læse de data, du lige har skrevet ved hjælp af Mongoid, skal du indstille databasesessionsindstillingerne consistency: :strong, safe: true
, hvoraf ingen er standard.