
----- Original Message ----- From: "Bob Walters" <bob.s.walters@gmail.com> To: <boost@lists.boost.org> Sent: Wednesday, February 17, 2010 7:43 AM Subject: Re: [boost] [transact] code in sandbox On Sun, Feb 14, 2010 at 6:53 PM, vicente.botet <vicente.botet@wanadoo.fr> wrote:
Hi, here they are some of operations I need
void rollback(); | void abort(); void rollback_only(); | void force_to_abort();
Can you clarify the difference between these two?
void restart();
bool is_top_level(); transaction_state status(); where enum transaction_state { active, marked_roolback_only, | forced_to_abort prepared, committed, rolledback, preparing, committing, rollingback ... };
If you are expecting the TM used in common among all libraries to support these states, then you have to clarify what these states mean, and how they apply to the interaction between the TM and the RM of Boost.STM. Have you considered the possibility that some of these states might be needed only on the STM-specific transaction data, tracked interanlly. I am guessing that marked_rollback_only, preparing, committing, and rollingback might all be statuses which you don't have to expose in your interaction with the TM. Thanks, - Bob _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost The "|" marks alternative names, i.e. two proposals. preparing, committing, and rollingback should not appear, as the comit is not done asynchronously as all the resource managers are local to the process. marked_rollback_only or forced_to_abort seems to me a unseful information for the user. Vicente