From: Masataka S. <pg...@gm...> - 2014-02-17 08:24:12
|
Hi, I got a report that an error message "GTM error, could not obtain snapshot" still produced. I looked deeply in the proxy, then I found an another bug and misc errors. I explain the summary of them and attached patches. All suggestions are welcome. 01_fix_proxy_connid.patch: A proxy assigns an connection ID to the connection from back-end. A connection ID is sent to the GTM when back-end requires a new transaction ID, back-end disconnected and so on. If a back-end disconnected, the GTM releases transactions related on the back-end. On the other hand, a proxy renumbers the connection ID to fill a gapping entry in the connection array. But it is not notified to the GTM, and it causes the release of a transaction that is not related to disconnected back-end. The patch makes the connection ID static by separating the connection ID from the index of the connection array. 01_fix_proxy_ereport_again.patch: I fixed the issue before -- when GTM proxy received an error response to a command, GTM proxy reported error using an unrelated connection to the command -- but the patch had mistake. This is the patch that fixes it in right way. 01_fix_proxy_redundancy.patch: A GTM proxy has some redundant code. This patch eliminates them. Regards. |