Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

116
Visualizações
Nodo readFile dentro de un desbordamiento de memoria de bucle

Tengo una carpeta con 98 archivos .csv que necesito leer y guardar en una base de datos de Postgres. Estoy ejecutando este código:

 // Files in folder const filesInFolder = fs.readdirSync('../pages-csv'); for (let i = 0; i < filesInFolder.length; i++) { console.log(`Saving file ${filesInFolder[i]}`) await fs.promises.readFile(path.join(__dirname, `../pages-csv/${filesInFolder[i]}`), 'utf8').then(async (data) => { await createOne(data) // database function }) }

Pero conduce a este error:

ERROR FATAL: Marca-compactos ineficaces cerca del límite de almacenamiento dinámico Falló la asignación: almacenamiento dinámico de JavaScript sin memoria

Parece que los archivos no se cierran o no se borran de la memoria después de insertarlos en la base de datos.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

¿Has probado a transmitirlo? Algo como:

 var csv = require('csv-parser') var data = [] for (let i = 0; i < filesInFolder.length; i++) { console.log(`Saving file ${filesInFolder[i]}`) enter code here // add the 'file path here' fs.createReadStream(filesInFolder[i]) .pipe(csv()) .on('data', function (row) { createOne(row) }) .on('end', function () { console.log('End cvs') }) }

O tal vez haya una forma de borrar la recolección de basura: global.gc(), después de exponerlo: node --expose_gc

about 4 years ago · Juan Pablo Isaza Relatório

0

Encontré el problema, era la función createOne , tenía un bucle forEach, lo eliminé y ¡ahora funciona!

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda