LP#1415898 Fix Potential Cstore Starvation in the OPAC user/dyrcona/lp1415898_opac_xact_fix
authorJason Stephenson <jason@sigio.com>
Thu, 29 Jan 2015 13:02:03 +0000 (08:02 -0500)
committerJason Stephenson <jason@sigio.com>
Thu, 29 Jan 2015 13:02:03 +0000 (08:02 -0500)
When a user views their current circulations and/or renews them via
the OPAC, a connection is made to a cstore drone so that the user's
circulations can be retrieved from the database, bypassing the cache.
This connection is not closed, and thus a cstore drone is left unable
to respond to new requests for several seconds.  On a busy server,
this has actually caused the number of cstore drones to hit the limit
configured in opensrf.xml.  If that situation continues for too long,
it leads to the load on the server spiking to the point where services
must be restarted.

This commit changes from xact_rollback to rollback so that the connection
will be closed.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm

index c2e6450..4a2b5dc 100644 (file)
@@ -1247,7 +1247,7 @@ sub fetch_user_circs {
                 undef  # pre-cat copy, use the dummy title/author instead
         });
     }
-    $e->xact_rollback;
+    $e->rollback;
 
     # make sure the final list is in the correct order
     my @sorted_circs;