SIP2 failures with certain kinds of user standing penalties

Bug #1592891 reported by Jeff Godin
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Evergreen
Fix Released
High
Unassigned

Bug Description

Affects 2.10, master:

The new feature introduced in bug 1499123 enables Standing Penalties to have an Ignore Proximity.

Some of the SIP2 changes for this feature cause failures when a patron has certain kinds of standing penalties.

If you attempt to retrieve a patron that has a blocking standing penalty applied whose corresponding config.standing_penalty has a null ignore_proximity SIP patron info messages will break.

Depending on your SIPServer personality, you'll either notice a failure to respond to patron info messages, or you may get an immediate disconnect.

When running SIPServer in non-daemon mode, you'll see something like this:

Can't locate object method "standing_penalty" via package "1" (perhaps you forgot to load "1"?) at /usr/local/share/perl/5.20.2/OpenILS/SIP/Patron.pm line 450, <GEN12> line 2.

"1" will be the id of a standing penalty.

Revision history for this message
Jeff Godin (jgodin) wrote :
Revision history for this message
Jeff Godin (jgodin) wrote :

Pushed tests to working branch. Adding pullrequest tag.

tags: added: pullrequest
Changed in evergreen:
assignee: Jeff Godin (jgodin) → nobody
Revision history for this message
Jeff Godin (jgodin) wrote :

Force pushed (hopefully not impacting anyone -- since nobody's assigned) a fixup to the tests: remove an unused function and add/change some comments.

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

I've tested and applied the patches to master and rel_2_10 for inclusion in the 2.10.5 release. I also added a patch that makes it less likely that the entire test script will crash and thus fail to reach its cleanup stage, making it easier to run it repeatedly with and with the base patch in place.

Changed in evergreen:
status: New → Fix Committed
Changed in evergreen:
status: Fix Committed → Fix Released
Revision history for this message
Jason Etheridge (phasefx) wrote :

From today's live test run:

# Test bugfix for lp1592891 - SIP2 failures with standing penalties.

# Failed test 'SIP says patron has excessive fines'
# at live_t/18-lp1592891_sip_standing_penalties.t line 187.
# got: '0'
# expected: '1'

# Failed test 'SIP says patron has excessive fines'
# at live_t/18-lp1592891_sip_standing_penalties.t line 193.
# got: '0'
# expected: '1'

# Failed test 'SIP says patron has too many overdues'
# at live_t/18-lp1592891_sip_standing_penalties.t line 194.
# got: '0'
# expected: '1'
# Looks like you failed 3 tests of 30.
live_t/18-lp1592891_sip_standing_penalties.t .....
Dubious, test returned 3 (wstat 768, 0x300)
Failed 3/30 subtests

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

I've pushed a patch fixing the regression, which stemmed from the patches for bug 165992. Thanks for the catch, Jason!

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.