NOTBUSY No scripts in execution right now: No scripts in execution right now(現在実行中のスクリプトはない)
Redis意味
SCRIPT KILL または FUNCTION KILL を送信したが、現在実行中 (かつ強制終了可能) の Lua スクリプト/関数がない。終了する対象がないため、コマンドは拒否された。
原因
停止しようとした時点でスクリプトが既に終了していた、SCRIPT KILL を誤ったノードに送信した (スクリプトは別のインスタンスで実行中)、または SCRIPT KILL の前に BUSY 状態が自然に解消した。通常はタイミングの問題。
対処方法
実際にスタックしたスクリプトがなければ、対処は不要である。これは安全な/情報提供的な応答である。BUSY エラー (スクリプトが busy-reply-threshold を超えた。Redis 7 より前は lua-time-limit という名前) が発生した場合は、スクリプトが実行されている正しいノードで SCRIPT KILL (関数の場合は FUNCTION KILL) を試す。スクリプトがデータを変更している場合 SCRIPT KILL は機能せず、最後の手段として SHUTDOWN NOSAVE が必要になることがある。長いスクリプトは分割し、時間制限を守る。
同じデータベースの他の項目
- ERR DISCARD without MULTIDISCARD without MULTI(MULTI なしの DISCARD)
- BUSYGROUP Consumer Group name already existsConsumer group already exists(コンシューマグループが既に存在する)
- NOGROUP No such key or consumer groupNo such key or consumer group in stream(ストリームにそのキーまたはコンシューマグループがない)
- DENIED Redis is running in protected modeRedis is running in protected mode(Redis は保護モードで稼働中)
- ERR Can't execute '<cmd>': only (P|S)SUBSCRIBE / (P|S)UNSUBSCRIBE / PING / QUIT / RESET are allowed in this contextCommand not allowed in subscribe context(subscribe コンテキストでは許可されないコマンド)
- ERR SELECT is not allowed in cluster modeSELECT is not allowed in cluster mode(クラスタモードでは SELECT は許可されない)
- ERR wrong number of arguments for commandWrong number of arguments for command(コマンドの引数の数が誤っている)