SIP returns multiple AVs in a 64 response message

Bug #1912699 reported by Blake GH
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Evergreen
New
Undecided
Unassigned

Bug Description

EG 3.5+

We've found that SIP can return a lot of AV's like this:

64 00020210115 112057000000000000000100000000AOxx|AAxxxxx|AETest Card 1 OCPL|BHUSD|BV0.20|BDaddress|BFphone|AQxxx|AV0.20 Misc Testing online payment|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|AV|BLY|CQY|PAxxxxx|PBxxxxxx|PCAdult|PIFiltered|XIxxxx|

as a result of this message:
6300020210115ZZZZ102107NNNYN AOxxxx|AAxxxxxxx|AC|AD0005|BP1|BQ50|

This is due to the "BP1" and "BQ50" - meaning "Please send me the patron bill information for items 1-50"

And if the patron only has one thing, then Evergreen will return 49 blanks.

The offending lines of code seem to be around here:

https://git.evergreen-ils.org/?p=Evergreen.git;a=blob;f=Open-ILS/src/perlmods/lib/OpenILS/SIP/Patron.pm;h=c26d8bffb92d7bb46d4450c2952684c8859a4bc8;hb=HEAD#l992

and the solution might be:

return (defined $start and defined $end) ? [ grep {$_} @fines[($start-1)..($end-1)] ] : \@fines;

As per berick. Associated IRC log:

http://irc.evergreen-ils.org/evergreen/2021-01-21#i_471939

Tags: sip
tags: added: sip
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers