cancel
Showing results for 
Search instead for 
Did you mean: 

RunOperationOnList: Operation´s subcontext cached

Javi_Rodríguez
Champ on-the-rise
Champ on-the-rise

Hello!

I am building a operation chain (OP_1) that this call to other operation chain (OP_2). The first operation use the RunOperationOnList with the next configuration:

  • id: OP_1
  • List: listUser
  • insolate: false
  • item: item
  • newTx: false
  • parameters:
  • rollbackGlobal...:false
  • timeout:

The OP_2 loggin a info message by console. This show the item value.

  • ConsoleLog::message: @{Context["item"]}
  • ConsoleLog::level: info

Problem´s description

When I launch OP_1 with listUser = {'User_1', 'User_2', 'User_3'}. OP_2 is executed three times (All OK) but show in logger 'User_1' always (ERROR!!). I have debugged org.nuxeo.ecm.automation.core.operations.execution.RunOperationOnList and I have checked that the vars send to subContext is correct. The problem is in each execution the OP_1. When execute OP_1, org.nuxeo.ecm.automation.core.impl.OperationServiceImpl::run() recover the chain instance from cache:

(L192) CacheKey cacheKey = new CacheKey(operationType.getId(), inputType.getName());
(L193) chain = compiledChains.get(cacheKey);

This override the vars sended in the new subcontext, and execute the operation with old subcontext (first call). How can we ignore the cache instance?

thanks, regards.

0 REPLIES 0
Getting started

Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.