Thanks for the advices, I will look into auto_reconnects_failed/auto_reconnects_ok
Do it anyway :)
Well, this is not possible and here's why: the application in question is reading from a fifo. Another app writes into that fifo in nonblocking mode at a very high rate. Attempting to restore the connection from scratch takes quite some time and there is a good chance, that the fifo will overflow, so some data will be dropped from it. Sometimes, it happens that MySQL server, indeed, "goes away" - gets taken down for backup etc etc. So I cannot really attempt to restore the connection every single time the query fails because "The server has gone away". My aim is to isolate the problem, that I described in my original post so I can deal with it in its own way, and leave everything else intact.