Page MenuHomePhabricator

Provide users a hint that "KILL <process>" is a possible source of connection loss
ClosedPublic

Authored by epriestley on Oct 24 2018, 5:42 PM.
Tags
None
Referenced Files
F15580405: D19756.id47189.diff
Wed, May 7, 5:20 AM
F15580171: D19756.diff
Wed, May 7, 3:58 AM
F15561077: D19756.id47189.diff
Tue, Apr 29, 6:01 PM
F15556303: D19756.id.diff
Mon, Apr 28, 3:44 PM
F15550503: D19756.diff
Sun, Apr 27, 12:03 PM
F15517105: D19756.id47207.diff
Sat, Apr 19, 12:21 AM
F15451058: D19756.id47189.diff
Mar 28 2025, 7:55 PM
F15440568: D19756.diff
Mar 26 2025, 1:36 PM
Subscribers
None

Details

Summary

Ref T13210. See PHI943. When a query fails due to connection loss we currently suggest "wait_timeout" and "max_allowed_packet", but something KILL'ing us also causes this outcome. Add that as a suggestion.

Test Plan

KILL'd a lock three times, got:

$ php -f lock.php 
[2018-10-24 10:40:29] EXCEPTION: (AphrontConnectionLostQueryException) #2006: MySQL server has gone away

This error may occur if your configured MySQL "wait_timeout" or "max_allowed_packet" values are too small. This may also indicate that something used the MySQL "KILL <process>" command to kill the connection running the query. at [<phutil>/src/aphront/storage/connection/mysql/AphrontBaseMySQLDatabaseConnection.php:304]
...

Diff Detail

Repository
rPHU libphutil
Lint
Lint Not Applicable
Unit
Tests Not Applicable