Subrequest returns spurious post-complete values

Bug #1180849 reported by Mike Rylander on 2013-05-16
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenSRF
Medium
Unassigned
2.1
Medium
Unassigned
2.2
Medium
Unassigned

Bug Description

From the commit at the tip of http://git.evergreen-ils.org/?p=working/OpenSRF.git;a=shortlog;h=refs/heads/collab/miker/safer-subrequest-respond-complete

Subrequests (AKA method_lookup()-based API calls) sometimes append
final-lvalue responses to the response list even after respond_complete()
has been called from within the implementation method. This commit
discards all post-respond_complete values, protecting against extra,
spurious values being returned to the ultimate client.

This is important because, while remote requests actively discard post-complete RESPONSE messages, subrequests against local API methods do not and end up passing them back to remote callers. This causes a change in response behavior between atomic and non-atomic versions of a method, as the atomic wrapper uses a subrequest to gather results.

Bill Erickson (berick) wrote :

Confirmed that the changes in the branch resolve the issue where it was first spotted. I've pushed a signed-off commit to

working/user/berick/safer-subrequest-respond-complete-signoff

I'll run this patch on my test server a little longer...

Galen Charlton (gmc) on 2013-12-16
Changed in opensrf:
milestone: none → 2.3.0-beta
Galen Charlton (gmc) wrote :

Pushed (along with a regression test) to master, rel_2_3, rel_2_2, and rel_2_1. Thanks, Mike!

Changed in opensrf:
status: New → Fix Committed
Galen Charlton (gmc) on 2014-02-28
Changed in opensrf:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers