node.js, pg, postgresql et requêtes d’insertion (blocage de l’application)

J’ai l’application de nœud simple suivante pour l’insertion de données dans la firebase database postgres:

var pg = require('pg'); var dbUrl = 'tcp://user:psw@localhost:5432/test-db'; pg.connect(dbUrl, function(err, client, done) { for (var i = 0; i < 1000; i++) { client.query( 'INSERT into post1 (title, body, created_at) VALUES($1, $2, $3) RETURNING id', ['title', 'long... body...', new Date()], function(err, result) { if (err) { console.log(err); } else { console.log('row inserted with id: ' + result.rows[0].id); } }); } }); 

Après avoir exécuté le noeud app.js dans le terminal, il insère 1 000 lignes dans la firebase database, puis l’application se bloque et elle ne se termine pas. Qu’est ce que je fais mal? J’ai examiné des exemples de modules pg mais je n’ai pas remarqué que je faisais quelque chose différemment…

    J’ai manqué l’appel au client.end (); Maintenant, l’application se ferme correctement:

     pg.connect(dbUrl, function(err, client, done) { var i = 0, count = 0; for (i = 0; i < 1000; i++) { client.query( 'INSERT into post1 (title, body, created_at) VALUES($1, $2, $3) RETURNING id', ['title', 'long... body...', new Date()], function(err, result) { if (err) { console.log(err); } else { console.log('row inserted with id: ' + result.rows[0].id); } count++; console.log('count = ' + count); if (count == 1000) { console.log('Client will end now!!!'); client.end(); } }); } });