sql >> Databasteknik >  >> NoSQL >> MongoDB

JavaScript har slut på minne när du strömmar stora filer

Lägger upp min kommentar som ett svar, eftersom det löste problemet och kan vara användbart för andra som har svårt att använda xml-stream paketera på detta sätt.

I fråga är collect metoden orsakar problemet eftersom den tvingar tolken att samla in alla instanser av den bearbetade noden i en array när de analyseras. collect bör endast användas för att samla in underordnade objekt av en viss typ från varje nod som tolkas. Standardbeteendet är att inte göra det (på grund av strömningskaraktären hos parsern som låter dig bearbeta filer med flera gigabyte med lätthet).

Så lösningen var att ta bort den kodraden och bara använda endElement händelse.




  1. Hur Mocha vet vilken fil som ska laddas först i testsviten

  2. Vad betyder MongoDB:s dokumentation när den säger att ObjectIDs sannolikt är unika?

  3. Använda S3 som en databas kontra databas (t.ex. MongoDB)

  4. Hitta dokument med array som innehåller ett specifikt värde