Compensation events are not executed in reverse order as agreed

The following is my flow chart, the defined compensation event failed to be executed in reverse as agreedcancel_order_call_back_flow.bpmn (2.2 KB)
cancel_order_execution_flow.bpmn (2.2 KB)
cancel_order_flow.bpmn (12.9 KB)
cancel_order_receive_msg.bpmn (2.1 KB)

My question seems like:

By default this is not necessarily guaranteed - have you added anything that would define the order?

This is how this manual says:Intermediate Throwing Compensation Event