]> git.evergreen-ils.org Git - evergreen/pines.git/commit
LP#1949910: serialize deleting items from item bucket rel_3_6_1
authorGalen Charlton <gmc@equinoxOLI.org>
Thu, 11 Nov 2021 16:21:11 +0000 (11:21 -0500)
committerChris Sharp <csharp@georgialibraries.org>
Wed, 15 Dec 2021 19:56:33 +0000 (14:56 -0500)
commit5fd34be791a0cddd4c7dcd8b1a37582947bb94a6
treef880d9137897668d75bab93097f3289157dabc29
parent962796364364fd23612a78ecc7d8ec581a478695
LP#1949910: serialize deleting items from item bucket

This patch serializes the fetching and fleshing of items to delete
when the delete-from-item-bucket action is invoked, thereby
avoiding possible drone starvation from open-ils.search. It
also throws up the progress dialog for good measure while
the deletion occurs.

To test
-------
[1] Set up an item bucket with 25-50 items.
[2] From the item bucket intervace, invoke the action to delete
    all of the items.
[3] Note that the open-ils.search.asset.copy.fleshed2.retrieve calls,
    one for each item, are all made simultaneously. Assuming stock
    max_children settings, this will cause open-ils.search to log
    that some requests are hitting the backlog.
[4] Apply the patch and refresh the item bucket page, then repeat
    step 2 (it doesn't matter for this purpose that the items have
    already been deleted). This time, the open-ils.search API calls
    are made serially and a progress bar is displayed while the
    deletion takes place. Verify that no requests hit the backlog.

Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Open-ILS/web/js/ui/default/staff/cat/bucket/copy/app.js