Not the answer you need?
Register and ask your own question!

Randomly Getting "Got an error reading communication packets"

infdude666infdude666 ContributorCurrent User Role Beginner
I have been getting this error a dozen a day or so. I've googled for advice and don't see anything helpful.

140725 1:45:29 [Warning] Aborted connection 406119665 to db: 'XXX' user: 'trans_user' host: 'XXX.XXX.X.XX' (Got an error reading communication packets)

The client reports:
Failed to get head revision: (OperationalError) (2013, "Lost connection to MySQL server at 'reading authorization packet', system error: 0") None None


I have Percona 5.5.16 Version Runnig on Centos5
It is fronted by HAProxy.

My CNF:

innodb_log_buffer_size=64M
innodb_log_file_size=1G
skip-name-resolve
max_connections=1000
max_allowed_packet=64M
net_read_timeout=1800
net_write_timeout=1800
connect_timeout=60
back_log=1500

The question: where else can I look for the reason?

Comments

  • alaincravenalaincraven Entrant Inactive User Role Beginner
    Is this on a slave?
    Do you have multiple slaves?

    If yes to both, try change the slave server id in my.cnf to something else, and restart mysql
  • infdude666infdude666 Contributor Current User Role Beginner
    alaincraven, No this is not slave. But for info all my Slave have different unique serverid's. The error Failed to get head revision: (OperationalError) (2013, "Lost connection to MySQL server at 'reading authorization packet', system error: 0") None None comes from the java/python application error log.
  • psongpsong Contributor Inactive User Role Beginner
    The 'reading authorization packet' error indicated it was during the login/authorization step. However, the server error showed the client connection had already being made with a thread id. Can you verify that these client and server errors happened at the same time?

    For the server side error, it is generally due to client program terminated abruptly, or didn't call mysql_close() before exiting, or idle for too long, or network failure. You can refer to the documentation at http://dev.mysql.com/doc/refman/5.6/en/communication-errors.html.

    The server error log gives the aborted thread id. You may run "show processlist" periodically to check if the thread indeed idle for longer than (interactive_timeout, wait_timeout). Or turn on general query log to track the activity of the thread. And do a network audit as well.
  • infdude666infdude666 Contributor Current User Role Beginner
    Thanks psong. I guess i have to check my network layer for the solution.
Sign In or Register to comment.

MySQL, InnoDB, MariaDB and MongoDB are trademarks of their respective owners.
Copyright ©2005 - 2020 Percona LLC. All rights reserved.