Branch Coverage

blib/lib/DBIx/Class/Storage/DBI/mysql/Retryable.pm
Criterion Covered Total %
branch 56 84 66.6


line true false branch
198 2 2 if @_
206 2 16 if @_
212 2 2 $_[0] ? :
4 0 if @_
213 2 2 $self->enable_retryable ? :
232 12 8 if $timeout == -1
252 3 5 if ($type eq 'dbi') { }
5 0 elsif ($type eq 'session') { }
254 0 3 if $self->aggressive_timeouts
260 0 5 if $self->aggressive_timeouts
275 7 3 unless $self->_retryable_current_timeout and $self->enable_retryable
290 0 0 unless $self->_retryable_current_timeout and $self->enable_retryable
297 0 0 if (ref $info eq "CODE")
298 0 0 unless $ENV{'DBIC_RETRYABLE_DONT_SET_CONNECT_SESSION_VARS'}
318 0 0 unless $dbi_attr and ref $dbi_attr eq "HASH"
332 12 5 unless $self->_retryable_current_timeout and $self->enable_retryable
348 5 0 if ($dbh)
354 0 5 if (my $error = $@)
355 0 0 unless do { local $@; $self->parse_error_class->new($error)->is_transient }
361 0 0 if $error =~ m[Failed \w+ coderef: .+, attempts: \d+ / \d+, timer: [\d\.]+ / [\d\.]+ sec, last exception: ]
363 0 0 if $self->warn_on_retryable_error
370 2 13 unless $self->enable_retryable
405 8 13 @_ ? :
410 1 32 if ($call_type eq 'txn_do') { }
18 14 elsif ($call_type eq 'dbh_do') { }
14 0 elsif ($call_type eq 'connect') { }
417 4 17 if $self->{'_in_do_block'} or $self->transaction_depth
424 12 5 if $timeout == -1
472 1 13 unless $parsed_error->is_transient
475 0 13 if $self->warn_on_retryable_error
478 1 12 if ($sleep_time == -1) { }
4 8 elsif ($sleep_time) { }
481 0 12 if ($new_timeout > 0)
489 3 9 unless ($parsed_error->error_type eq "lock")
497 0 12 if (my $connect_error = $@)
507 2 7 unless $self->enable_retryable
529 0 1 unless $self->enable_retryable
563 0 17 if ($needs_resetting)
595 0 2 if ($self->_failed_attempt_count <= $self->retries_before_error_prefix)
616 2 16 if $exception_prefix
618 16 2 unless $exception_prefix
622 2 0 if (&blessed($error) and $error->isa('DBIx::Class::Exception')) { }