method_lookup('open-ils.storage.transaction.FOO')->run($client) now problematic

Bug #1664386 reported by Galen Charlton
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Evergreen
Fix Released
High
Unassigned

Bug Description

There are a handful of places in open-ils.storage that do this:

$self->method_lookup('open-ils.storage.transaction.{begin/rollback}')->run($client)

Passing $client to method_lookup->run has the effect of specifying that you want a top-level request, not a subrequest. With the recent subrequest and client time zone changes to Evergreen and OpenSRF master, the upshot is that a storage method that also does transaction management will return to the top-level client not only its results, but also '1' from each invocation of $self->method_lookup('open-ils.storage.transaction.{begin/rollback}')->run($client).

Since that idiom is no longer needed (session information which which to construct the transaction ID is now automatically passed to subrequests), it should be removed to avoid breaking clients of the following methods:

open-ils.storage.actor.user.checked_out
open-ils.storage.booking.reservation.resource_targeter
open-ils.storage.action.hold_request.copy_targeter

Evergreen master
OpenSRF master

Tags: pullrequest
Galen Charlton (gmc)
Changed in evergreen:
milestone: none → 2.12-beta
importance: Undecided → High
Revision history for this message
Galen Charlton (gmc) wrote :

A patch is available at the tip of the user/gmcharlt/lp1664386_fix_db_xact_subrequests branch:

http://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/user/gmcharlt/lp1664386_fix_db_xact_subrequests

tags: added: pullrequest
Bill Erickson (berick)
Changed in evergreen:
status: New → Confirmed
Bill Erickson (berick)
Changed in evergreen:
assignee: nobody → Bill Erickson (berick)
Revision history for this message
Bill Erickson (berick) wrote :

Bug and subsequent fix confirmed. Merged to master. Thanks, Galen!

Changed in evergreen:
status: Confirmed → Fix Committed
assignee: Bill Erickson (berick) → nobody
Changed in evergreen:
status: Fix Committed → Fix Released
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.