nodeで書いたスクリプトが有り、中でMySQLデータベースにINSERTする処理が書かれています。
これをnode スクリプト.js
と、直接呼ぶと正常に処理が完了します。
しかし、expressでAPIを書き、その中でexecSyncを使って上記スクリプトを実行すると
処理自体は完了するのですがMysql側でshow processlist
とすると、プロセスがsleep状態で残ったままとなってしまいます。
1回APIを呼ぶ度に1つプロセスが増え、expressを停止すると一斉に消えます。
expressがコネクションをプールしている?と推察しているのですがそのような設定は見当たりませんでした。
ちなみにスクリプト内ではmysql2/promiseを利用し、await con.query(~~
という形で同期的に処理をしています。
どなたか、心当たりのある方はいらっしゃらないでしょうか。
よろしくお願い致します。
※追記
MySQLのエラーログには一切ログが追記されていませんでした。
※さらに追記
dodox86さんのアドバイスにより私自身の問題はクリア出来ましたが
質問内容そのものに関しては謎のままなのでこのまま残したいと思います。
引き続きexpress,Node.jsまわりでの解決の糸口をお持ちの方、ご回答のほどよろしくお願い申し上げます。
回答1件
あなたの回答
tips
プレビュー