■85249 / inTopicNo.3) |
Re[1]: sql実行中における強制終了時の挙動 |
□投稿者/ WebSurfer (1318回)-(2017/09/26(Tue) 15:30:42)
|
■No85230 (クッキー さん) に返信
ググって調べただけですが、以下のドキュメントに説明があります。
Chapter 6 Connector/Net Connection-String Options Reference https://dev.mysql.com/doc/connector-net/en/connector-net-connection-options.html
Connect Timeout, Connection Timeout, ConnectionTimeout
The length of time (in seconds) to wait for a connection to the server before terminating the attempt and generating an error.
Connection Lifetime, ConnectionLifeTime
When a connection is returned to the pool, its creation time is compared with the current time, and the connection is destroyed if that time span (in seconds) exceeds the value specified by Connection Lifetime. This is useful in clustered configurations to force load balancing between a running server and a server just brought online. A value of zero (0) causes pooled connections to have the maximum connection timeout.
Connect Timeout はサーバーへの接続を待機する時間で、「発行されたクエリはサーバ側で自動的にkill」とは 関係ないようです。この時間が経過した後、接続の試行を終了し、エラーを生成します。
Connection Lifetime は接続プール関係の設定パラメータで、これも「発行されたクエリはサーバ側で自動的に kill」とは関係ないようです。
想像ですが、接続が確立され、クエリが MySQL に投げられたら、後は MySQL がどう処置するかという話になるの では? だから、
> クライアントで投げたクエリがサーバ側で30分以上も残り続けてしまった
ということになったのだと想像してます。
何にせよ、Connect Timeout と Connection Lifetime は関係なさそうです。
|
|