Don't treat START TRANSACTION as part of the transaction
Summary:
We use short transactions and we reconnect if the connection falls down outside transaction.
But START TRANSACTION is treated as part of the transaction so if connection falls while executing this command then we refuse to reconnect.
NOTE: We don't want COMMIT and ROLLBACK put outside transaction because if connection falls before executing them we need to throw away everything.
Test Plan: Created a very large diff with lots of Herald rule evealuating longer than wait_timeout.
Reviewers: epriestley
Reviewed By: epriestley
CC: aran, Korvin
Differential Revision: https://secure.phabricator.com/D3285