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
Unknown Object (File)
Apr 21 2026, 6:30 AM
Unknown Object (File)
Apr 19 2026, 2:27 AM
Unknown Object (File)
Mar 31 2026, 11:30 PM
Unknown Object (File)
Mar 9 2026, 8:28 PM
Unknown Object (File)
Mar 5 2026, 5:26 PM
Unknown Object (File)
Dec 9 2025, 2:13 PM
Unknown Object (File)
Dec 6 2025, 3:45 PM
Unknown Object (File)
Dec 5 2025, 11:34 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
Branch
kill1
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 21034
Build 28578: Run Core Tests
Build 28577: arc lint + arc unit