Anton, I have objections. Please do not merge unless we agree on details. 1. You use internal API in public event, i.e. you cannot have user accessing to IgniteInternalTx instance through TxEvent. 2. Throwing runtime errors from listener is not documented and I doubt if it can be fully supported in the pattern you use in TxLabelTest. After looking at the mentioned test user may think that throwing runtime error when notified on new node join may prohibit new node joining which is not true. Do you have any example in Ignite when throwing exception from listener is valid and documented. 3. TxLabelTest is not included into any suite. 4. EVT_TX_STARTED - does not seems to be a proper and descriptive name
I think that we should think about some other solution instead of altering event sub-system. Also I want to ask everyone in community to request explicit approval from community members before changing anything in transactional logic. Thanks! --Yakov