(Opmerking :origineel antwoord bijgewerkt na wat extra onderzoek)
De nieuwe schrijfbewerkingsopdrachten
die binnenkwamen met 2.6 en dus in gebruik zijn tussen elk ondersteund stuurprogramma (PHP 1.5+) en MongoDB-server (2.6+) betekent dat de nieuwe semantiek van w=0
schrijft zijn in het spel. Dat betekent dat de server wacht tot de bewerking is voltooid voordat een antwoord wordt verzonden (dat wil zeggen, het enige verschil tussen w=0
en w=1
is dat w=0
laat de foutdetails weg). De chauffeur wacht nog steeds op die reactie voordat hij terugkeert van de oproep (d.w.z. is niet langer vuur en vergeet).
Je kunt dit ook zien in de MongoDB-shell zelf, en de officiële manier om dit te omzeilen is om de nieuwe Bulk-API . Hoewel ik weet dat het 1.5-stuurprogramma terugvalt op oudere schrijfbewerkingen wanneer verbinding wordt gemaakt met een 2.4-server en lager, is er geen manier om dat gedrag in het PHP-stuurprogramma te forceren.