In ShoppingList.createListReorders (about line 166) a call is made to create
an order and then that order id is passed to
CheckOutHelper.processPaymentwhere it calls the authOrderPayments with
the following code:
               paymentResult = dispatcher.runSync("authOrderPayments",
                       UtilMisc.toMap("orderId", orderId, "userLogin",
userLogin), 180, true);

I test to see that the OrderHeader can be found in the code right before the
service call, but once it is in the service it cannot find the OrderHeader
with the same id. I change the "true" setting to "false" to not force a new
transaction and the OrderHeader is found. So it would seem that the order is
created in "CheckOutHelper.createOrder()" and the transaction is not
committed and once a new transaction is created, it cannot see uncommitted
data in other transactions, right?

I am not comfortable enough with transactions to know if that is a bug or if
there is a reason why a new transaction should be forced at the point. I
hesitate to put it into JIRA until I know. Can anyone tell me about this?

Thanks,
-Al

Reply via email to