Checkout can generate multiple checkout receipt events

Bug #2057974 reported by Jeff Davis
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Evergreen
New
Undecided
Unassigned

Bug Description

EG 3.11

We're seeing some cases where multiple checkout receipt events are being generated for a single circulation. I'm not sure how to reproduce this yet, but I don't think it's as simple as staff double-clicking a button. In one recent example, the logs show 2 separate open-ils.cstore.direct.action_trigger.event.create calls 5 seconds apart. In another case, 483 events were created for the same circ over a 10-minute period. At least some of the duplicate events are completing successfully, so presumably the patron is getting multiple checkout receipt emails.

We're seeing this happen with several different event defs that use the circ.checkout.batch_notify.session hook. The affected circulations appear to be ordinary circ desk checkouts, I don't see anything unusual about them so far.

Revision history for this message
Galen Charlton (gmc) wrote :

Something I'm curious about: do your logs also show open-ils.circ.checkout.batch_notify.session.atomic calls in the same proportion as the excess A/T events?

Revision history for this message
Galen Charlton (gmc) wrote :

Some scenarios I'm envisioning include:

- multiple clicks of the Quick Receipt button
- multiple clicks of the Done button
- the list of circs somehow not getting fully cleared between checkout sessions, leading to initiating receipts for loans made in a previous session

Revision history for this message
Chris Sharp (chrissharp123) wrote :

This reminds me of the Bad Old Days in PINES when underpowered PCs with insufficient RAM would begin to choke under the strain of the XUL client. Is it possible the workstations are underpowered (older PCs, thin clients, etc.)?

Revision history for this message
Jeff Davis (jdavis-sitka) wrote :

Yes, there are separate open-ils.circ.checkout.batch_notify.session.atomic calls for each duplicated event. That is, there are two checkout receipt events for a circ because open-ils.circ.checkout.batch_notify.session.atomic was invoked twice for the circ.

All the affected checkouts within the past month happened at 5 different workstations at 4 different libraries, and it's happened more than once on most of those workstations. In other words, it looks like a recurring problem on a limited number of workstations, which suggests that something about the workstation itself could be a contributing factor -- insufficient RAM, a specific Chrome version, etc. I'll see if I can get the specs for the affected workstations. That said, we only retain these events for 30 days, so it's possible that other libraries have been affected and I just can't tell because we've deleted the events.

tags: added: circ-checkout receipt
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.