List:Internals« Previous MessageNext Message »
From:Zardosht Kasheff Date:June 20 2012 5:22pm
Subject:Re: purpose of thd_mark_transaction_to_rollback
View as plain text  
Hello Dmitry,

Thank you for your response. Why does InnoDB do this when a deadlock
is detected? Does every storage engine need to do this? Is this part
of some specification that calls for this? Or is it some sort of
performance optimization?

Thanks
-Zardosht

On Tue, Jun 19, 2012 at 3:53 PM, Dmitry Lenev <Dmitry.Lenev@stripped> wrote:
> Hello Zardosht!
>
> * Zardosht Kasheff <zardosht@stripped> [12/06/19 22:20]:
>> Hello all,
>>
>> What is the purpose of thd_mark_transaction_to_rollback?
>
> This call allows storage engine to request a transaction/statement
> rollback from SQL-layer.
>
> For example, when InnoDB storage engine detects a deadlock it rolls
> back the transaction inside storage engine (i.e. itself), but it still
> needs to invoke this method so transaction is properly rolled back
> in other storage engines (including binary log).
>
>> Under what conditions is a storage engine required to call this function?
>
> See above. I guess it is good idea to call this method when your
> storage engine decides to initiate a transaction rollback because
> of internal reasons, i.e. in case when such a rollback is not
> explicitly initiated from SQL-layer.
>
> Hope this helps!
>
> --
> Dmitry Lenev, Software Developer
> Oracle Development SPB/MySQL, www.mysql.com
>
> Are you MySQL certified?  http://www.mysql.com/certification
Thread
purpose of thd_mark_transaction_to_rollbackZardosht Kasheff19 Jun
  • Re: purpose of thd_mark_transaction_to_rollbackDmitry Lenev19 Jun
    • Re: purpose of thd_mark_transaction_to_rollbackZardosht Kasheff20 Jun
      • Re: purpose of thd_mark_transaction_to_rollbackStewart Smith21 Jun
        • Re: purpose of thd_mark_transaction_to_rollbackZardosht Kasheff21 Jun
          • Re: purpose of thd_mark_transaction_to_rollbackStewart Smith22 Jun
      • Re: purpose of thd_mark_transaction_to_rollbackDmitry Lenev21 Jun