4.27.0 introduced a change that prevents the event loop from being cleaned up properly
See original GitHub issuehttps://github.com/evanlucas/ioredis-sentinel-hang is how I was able to reproduce it. We rely on calling quit
in all of our jobs/workers/services and if the event loop is not cleaned up, it prevents node from cleanly exiting the process. It looks like it is the new failover detection mechanism that was added. I’m seeing additional TCP sockets being opened, but never closed.
This only seems to occur when using redis sentinel.
Thanks!
Issue Analytics
- State:
- Created 2 years ago
- Reactions:1
- Comments:8 (3 by maintainers)
Top Results From Across the Web
Unreal Engine 4.27 Release Notes
Overview of new and updated features in Unreal Engine 4.27.
Read more >ioredis - Bountysource
We rely on calling quit in all of our jobs/workers/services and if the event loop is not cleaned up, it prevents node from...
Read more >EV - perl interface to libev, a high performance ... - MetaCPAN
The loop will automatically be destroyed when it is no longer referenced by any watcher and the loop object goes out of scope....
Read more >Event Loop — Python 3.11.1 documentation
Source code: Lib/asyncio/events.py, Lib/asyncio/base_events.py Preface The event loop is the core of every asyncio application. Event loops run asynchronous ...
Read more >The event loop - JavaScript - MDN Web Docs - Mozilla
If there is no other message in the queue, and the stack is empty, the message is processed right after the delay. However,...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Hey @evanlucas, let’s leave this open as the root issue hasn’t been fixed.
Hey @evanlucas, thanks for the reproducible repo! Calling
.disconnect()
should properly clean up everything. We should take a look for a fix forquit
.