Skip to main content

This content has been archived and is no longer being updated. Links may not function; however, this content may be relevant to outdated versions of the product.

Support Article

Asynchronous Data Page loads is lost in race conditions

SA-19130

Summary



When a rapid sequence of "load/free/load/free" of the same Data page, using the Load-DataPage method is performed, sometimes a particular load request is lost because of race conditions, and the page is never loaded.


Error Messages



Not Applicable.


Steps to Reproduce



1. Create a scenario in which the same data page is rapidly loaded asynchronously.
2. Unload via the Load-DataPage > connect-wait sequence.

 If the sequence of load or remove is fast enough, sometimes a load request is lost and the page does not load.


Root Cause



A defect in Pegasystems’ code or rules.  A child Requestor is used for the asynchronous load, and the child Requestor is returned to the Requestor pool after the load completes.  If the race condition is just right, the following scenarios might occur:
 
  • Load request 1
    • Get child requestor from the pool
    • Queue up load request 1
    • Load the page by means of the child requestor
    • Remove the page
  •  Load request 2
    • Use (the same) child requestor since it is already attached to the main Requestor
    • Queue up the load request using this child requestor
  • Load request 1 (continued)
    • Return the child requestor to the pool (even though it is now assigned to load the page for Request 2)  [ERROR]
  •  Load request 2 (continued)
    • Wait forever for the load which will not happen because the child requestor was returned to the pool as the concluding action of Load Request 1


Resolution



Apply HFix-25509.

 

Published February 9, 2016 - Updated October 8, 2020

Was this useful?

0% found this useful

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best.

Pega Community has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice
Contact us