0
votes

I'm using a APIs in EI. Sometimes the endpoint return unexpect message that the datamapper can't working.

$TID: [-1234] [] [2019-03-20 17:25:24,042] ERROR {API_LOGGER.getSignDetailInfoByChid1} - DataMapper mediator : mapping failed {API_LOGGER.getSignDetailInfoByChid1}

After tens of such ERROR, EI can't provide any service, even endpoint return normal message. In the log, I found the API finished in sequence and out sequence, just can't respond.

$TID: [-1] [] [2019-03-20 18:10:36,561] INFO {org.apache.synapse.transport.passthru.SourceHandler} - Writer null when calling informWriterError {org.apache.synapse.transport.passthru.SourceHandler}

Stop and restart EI can fix this problem.

How can I solve this problem without restart?

1

1 Answers

1
votes

This happens when the data mapper got an error while trying the execute the javascript function with the given input data.

EI has a javascript executor pool with a size of 20. When an error occurs that executor is not returning back to the pool. So when you get the mapping error 20 times data mapper can no longer take executors from the pool and stop working.

We resolved this issue via a WUM update for EI 6.1.1. Please take WUM update to resolve this issue. Or take the latest release pack 6.5.0

But, please look into the root cause which caused a mapping issue and try to get the mapping issue fixed.