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

Remote bug watches

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