db-migrate / db-migrate/node-db-migrate

EventEmitter memory leaks

Abierto
#421 3 comentarios 0 reacciones 0 asignados Ver en GitHub
good first issue help wanted Refactoring
Lenguaje dominante
JavaScript
Estrellas
2.3k
Forks
361
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

When using `db-migrate` programmatically for multiple databases, warnings are generated for EventEmitter leaks: `Warning: Possible EventEmitter memory leak detected. 11 unhandledRejection listeners added.`

Adding a `unregisterEvents` function to `api.js` should enable programmatic users to get around this. Such a function may also be used more generally to do proper cleanup.

Where `registerEvent()` is called:
https://github.com/db-migrate/node-db-migrate/blob/master/api.js#L136-L147

Where `registerEvents()` is defined:
https://github.com/db-migrate/node-db-migrate/blob/master/api.js#L136-L147
##

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/38131674-eventemitter-memory-leaks?utm_campaign=plugin&utm_content=tracker%2F73887&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F73887&utm_medium=issues&utm_source=github).

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Comienza en api.js, en el código enlazado de registerEvent() y registerEvents(), y reproduce el uso programático con varias bases de datos para observar las advertencias del listener de unhandledRejection. Define allí la limpieza mediante unregisterEvents() y verifica que el uso repetido ya no acumule listeners ni emita advertencias de fugas.

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

Evaluación

Stack tecnológico
javascript, node.js
Área
api, backend
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
45/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.