Thread level datapage loading incorrect data
SummaryUser is having a datapage which is of thread level.
The datapage is loaded repeatedly to invoke a request (connect-rest with POST method), and have a unique response.
However, when using case B to invoke the datapage, it loads the datapage of case A, while the datapage is on thread level.
Point to note: The datapage is called by Agent activity.
Error MessagesNot Applicable
Steps to ReproduceStep 1. Include a connect-rest handy which returns unique ID.
Step 2. Invoke a rest service through datapage.
Step 3. Create a case which will have assignment shape.
Step 4. On assgnment have a SLA defined.
Step 5. Bring down the SLA agent.
Step 6: In SLA, have an actiivty, from there call Data transform which calls the Datapage which calls the Rest service to get the unique ID.
Step 7. Create work objects.
Step 8. Review the unique IDs after running SLA.
Root CauseSLA agent or for the matter any agent executes on same thread and processes the queue items.
After processing queue items all the user pages will be cleaned that includes editable named clipboard pages and editable data pages. Read-only data pages and other scoped data pages are never cleaned during the processing of the agent.
Read-only pages are assumed to be for broader usage. If each queue item processing requires a fresh instance of the page then it has to removed first to reload it.
Refresh per interaction has no role in background requestors like Application or batch requestors. Only browser requestors have interactions - a HTTP request start to the end.
In this case when the agent starts a thread will be created and all the queue items processed during this run will have same thread and will continue using same data page.
ResolutionThis is expected behaviour.
Designing the data page to take in parameters, for example a timestamp so that the data page is refreshed.
Published November 21, 2017 - Updated October 8, 2020