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
F18902000: D19756.id47207.diff
Fri, Nov 7, 11:27 PM
F18861701: D19756.id.diff
Sun, Nov 2, 4:18 PM
F18856867: D19756.diff
Nov 1 2025, 11:53 AM
F18841030: D19756.id.diff
Oct 28 2025, 6:03 AM
F18837078: D19756.diff
Oct 27 2025, 4:18 AM
F18731980: D19756.id.diff
Sep 30 2025, 3:54 PM
F18716421: D19756.diff
Sep 29 2025, 11:58 AM
F18568611: D19756.id47207.diff
Sep 10 2025, 12:17 AM
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