Oliver Wilms · Jan 29, 2019

Errors using Ensemble BPL, FileService, persistent object %Save() fails, Error #5803, Error #5002


We have defined four BPL Business Processes. One gets occasionally errors when pool size is two. No errors happen with pool size one. The error happens on calling %Save() on a large objects with many references to other objects.

Error #5803: Failed to acquire exclusive lock on instance of 'classname'.

Error #5002: Cache error: <ROLLFAIL> %TRollBack+10^%occTransaction

The error happens on a particular large object.

Our FileService gets the same Errors #5803 and #5002 with class 'EnsLib.EDI.X12.Document'

Another BPL gets the same errors #5803 and #5002 with lock on instance of 'EDIGW.BPL.ST837.Context

Any explanation or suggestion are welcome.

0 389
Discussion (3)2
Log in or sign up to continue

Hi Oliver

Please contact Support. This needs reviewing your code and class structure. But it looks like you are amending/creating a huge collection of objects and writing it to disk at once. This might be causing issues with lock table (as well a table level lock).

Thank you.

Hi Oliver!

Could you please mark your answer as accepted? Thanks!

We understand what happened after we looked at the console log.

We failed to acquire locks when there were two actors because the lock table was full.

The rollback failed because journaling was off.

We will address our configuration.