I am running an agent which at one point processes about 35K records and places them on the clipboard (as Code-Pega-List) and then the agent loops through the records to do further processing.
I am getting the following error when I try to execute the agent activity from the browser and the tracer stops abruptly.
Any suggestions and/or pointers would be appreciated.
Unable to synchronize on requestor H4D5A9D8A169241462332A0576342E88B within 120 seconds: (thisThread = [ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)') (originally locked by = [ACTIVE] ExecuteThread: '5' for queue: 'weblogic.kernel.Default (self-tuning)') (finally locked by = [ACTIVE] ExecuteThread: '5' for queue: 'weblogic.kernel.Default (self-tuning)')
Probably a bad idea to load 35k records in cipboard. The exceptions speaks the same where the requestor waited for 2 long minutes before dumping the thread data. fine tune your design to take 35k records in small chunks.
Pega Reccomend maxm 10K record to load and iterate.As above suggested by other pega experts best way for you to fetch less number of records from table , you may set flag for not bringing the processed records.
I don't think "A" requestors will have requestor sync issue even if it crosses 120 secs. But yes, may be consider limiting the size of the resultset and increasing the frequency of the agent schedule or consider multinode agent processing (this comes with its own challenges though)..