Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Pipeline mode for Pool

Abierto
#3,738 3 comentarios 1 reacción 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
52/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Tranquilo
Stack tecnológico
javascript, postgresql

Línea de trabajo

Empieza por la configuración de Pool y el punto de entrada pool.query(), y luego sigue el proceso de cómo se obtienen, usan y devuelven los Client. Compara el comportamiento existente de la canalización de Client con los grupos de conexiones idle, busy y full solicitados; se considera terminado cuando los pools con pipeline pueden reutilizar conexiones ocupadas hasta maxPipeline, mientras que los cursores no se procesan mediante pipeline.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

feature request

pipeline: true works on a Client but a Pool cannot use it. pool.query() checks a client out, runs one query on it and gives it back only when the result arrives, so there is never a second query on that connection to pipeline with. Passing pipeline: true to the Pool config changes nothing today.

postgres.js already does this automatically. It keeps the connections in three groups:

  • idle
  • busy but still accepting
  • full
    when nothing is idle it sends the query on a busy one.

It limits itself with a depth cap (max_pipeline, default 100), with the socket backpressure, and it refuses to pipeline cursors.

The same is possible here and the public API almost does not change:

const pool = new Pool({ max: 10, pipeline: true, maxPipeline: 100 })
await pool.query('SELECT $1::int', [1]) // same call, can go on a connection already working
Lenguaje dominante
JavaScript
Estrellas
13.2k
Forks
1.4k
Merge medio
6 d 15 h
PR fusionados (30 d)
6

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de brianc/node-postgres

Todos los issues de brianc/node-postgres

Issues similares

Más issues de JavaScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.