Helps to reduce "No transaction to rollback" errors in the error logs.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
# -----------------------------------------------------------------------------
sub xact_rollback {
my $self = shift;
- return unless $self->{session} and $self->{xact_id};
+ return unless $self->{xact_id};
+ unless ($self->{session} and $self->{session}->connected) {
+ $self->log(I, "avoiding rollback attempt on un-connected session");
+ return;
+ }
$self->log(I, "rolling back db session");
my $stat = $self->request($self->app.".transaction.rollback");
$self->log(E, "error rolling back database transaction") unless $stat;