hyperf / hyperf/socketio-server

每次重启项目都报异常

Ouverte
#13 7 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
PHP
Étoiles
26
Forks
6
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

===================================================================
[FATAL ERROR]: all coroutines (count: 1) are asleep - deadlock!
===================================================================

[Coroutine-3]
--------------------------------------------------------------------
#0 Redis->zRangeByScore() called at [/data/hyperf_socket/vendor/hyperf/redis/src/RedisConnection.php:76]
#1 Hyperf\Redis\RedisConnection->__call() called at [/data/hyperf_socket/vendor/hyperf/redis/src/Redis.php:49]
#2 Hyperf\Redis\Redis->__call() called at [/data/hyperf_socket/vendor/hyperf/redis/src/RedisProxy.php:32]
#3 Hyperf\Redis\RedisProxy->__call() called at [/data/hyperf_socket/vendor/hyperf/socketio-server/src/Room/RedisAdapter.php:207]
#4 Hyperf\SocketIOServer\Room\RedisAdapter->cleanUpExpiredOnce() called at [/data/hyperf_socket/vendor/hyperf/socketio-server/src/Room/RedisAdapter.php:199]
#5 Hyperf\SocketIOServer\Room\RedisAdapter->Hyperf\SocketIOServer\Room\{closure}() called at [/data/hyperf_socket/vendor/hyperf/utils/src/Functions.php:271]
#6 call() called at [/data/hyperf_socket/vendor/hyperf/utils/src/Coroutine.php:62]

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Start at vendor/hyperf/socketio-server/src/Room/RedisAdapter.php:199-207, where cleanUpExpiredOnce() calls Redis, and inspect vendor/hyperf/redis/src/RedisConnection.php:76. Reproduce the project restart and trace the zRangeByScore call; done should mean the restart no longer produces the coroutine deadlock, with the relevant behavior covered by a regression check.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
php, redis
Domaine
backend, databases
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.