| line | true | false | branch | 
 
| 54 | 0 | 56 | if $drh | 
 
| 58 | 56 | 0 | unless ($methods_already_installed++) | 
 
| 86 | 0 | 4 | if @_ | 
 
| 88 | 2 | 2 | if defined $h->{'go_cache'} | 
 
| 97 | 22 | 7116 | if (my $warnings = $response->warnings) | 
 
| 104 | 1535 | 5603 | if defined $err | 
 
| 116 | 0 | 4866 | unless defined &{$full_method;} | 
 
| 119 | 0 | 4866 | unless $full_method =~ /^DBI::(\w\w)::(\w+)$/ | 
 
| 123 | 4700 | 166 | if defined &{$driver_method;} | 
 
| 125 | 126 | 40 | if ($type eq 'db') { } | 
 
| 158 | 0 | 716 | unless my $remote_dsn = $dsn =~ s/;?\bdsn=(.*)$// && $1 | 
 
| 161 | 1 | 715 | if ($attr->{'go_bypass'}) | 
 
| 177 | 715 | 0 | unless (ref $go_attr{'go_policy'}) | 
 
| 179 | 715 | 0 | unless $policy_class =~ /::/ | 
 
| 181 | 0 | 715 | unless _load_class($policy_class) | 
 
| 184 | 0 | 715 | unless $go_attr{'go_policy'} = eval {
	do {
	$policy_class->new(\%go_attr)
}
} | 
 
| 190 | 4 | 711 | if ($go_attr{'go_cache'} and not ref $go_attr{'go_cache'}) | 
 
| 192 | 4 | 0 | if $cache_class eq '1' | 
 
| 193 | 0 | 4 | unless _load_class($cache_class) | 
 
| 195 | 0 | 4 | unless $go_attr{'go_cache'} = eval {
	do {
	$cache_class->new
}
} | 
 
| 203 | 0 | 715 | unless my $transport_class = delete $go_attr{'go_transport'} | 
 
| 204 | 715 | 0 | unless $transport_class =~ /::/ | 
 
| 206 | 0 | 715 | unless _load_class($transport_class) | 
 
| 208 | 0 | 715 | unless my $go_transport = eval {
	do {
	$transport_class->new(\%go_attr)
}
} | 
 
| 212 | 0 | 715 | unless my $go_request = eval {
	do {
	my $go_attr = {%$attr};
if ($user) {
	$go_attr->{'Username'} = $user;
$go_attr->{'Password'} = $auth;
};
delete @{$go_attr;}{'Profile', 'HandleError', 'HandleSetErr', 'Callbacks'};
delete @{$go_attr;}{'RootClass', 'DbTypeSubclass'};
$go_connect_method ||= $go_policy->connect_method($remote_dsn, $go_attr) || 'connect';
$request_class->new({'dbh_connect_call', [$go_connect_method, $remote_dsn, $user, $auth, $go_attr]})
}
} | 
 
| 215 | 13 | 702 | if ($user) | 
 
| 244 | 530 | 185 | unless ($skip_connect_check) | 
 
| 245 | 26 | 504 | unless ($dbh->go_dbh_method(undef, 'ping')) | 
 
| 246 | 26 | 0 | if $dbh->err | 
 
| 258 | 1434 | 0 | if eval {
	do {
	require $pm
}
} | 
 
| 290 | 1093 | 2984 | if $dbh_attribute_update eq 'every' or $dbh->{'go_request_count'} == 1 | 
 
| 293 | 0 | 4077 | if $meta->{'go_last_insert_id_args'} | 
 
| 296 | 0 | 4077 | unless my $transport = $dbh->{'go_transport'} | 
 
| 299 | 0 | 4077 | if defined $dbh->{'go_cache'} | 
 
| 303 | 0 | 4077 | unless $dbh->{'go_response'} = $response | 
 
| 306 | 0 | 4077 | unless UNIVERSAL::isa($response, 'DBI::Gofer::Response') | 
 
| 309 | 1067 | 3010 | if (my $dbh_attributes = $response->dbh_attributes) | 
 
| 312 | 1067 | 0 | if (my $installed_methods = delete $dbh_attributes->{'dbi_installed_methods'}) | 
 
| 314 | 580 | 487 | if $dbh->{'go_request_count'} == 1 | 
 
| 323 | 10 | 4067 | if (my $resultset_list = $response->sth_resultsets) { } | 
 
|  | 0 | 4067 | elsif (not $rv) { } | 
 
| 343 | 58 | 4019 | wantarray ? : | 
 
| 363 | 0 | 209 | if ($dbh->{'dbi_default_methods'}{$method} and $dbh->{'go_policy'}->skip_default_methods) | 
 
| 370 | 185 | 24 | if (my $cache_it = $dbh->{'go_policy'}->$policy_name(undef, $dbh, @_)) | 
 
| 377 | 108 | 0 | ref $_ eq 'HASH' ? : | 
 
|  | 0 | 108 | ref $_ eq 'ARRAY' ? : | 
 
|  | 74 | 108 | !ref($_) ? : | 
 
| 379 | 58 | 127 | if ($rv = $cache->{$cache_key}) | 
 
| 383 | 0 | 58 | if UNIVERSAL::isa($cache_rv[0], 'DBI::st') | 
 
| 384 | 0 | 58 | wantarray ? : | 
 
| 389 | 50 | 101 | wantarray ? : | 
 
| 393 | 127 | 24 | if ($cache) | 
 
| 399 | 127 | 0 | unless UNIVERSAL::isa($cache_rv[0], 'DBI::st') | 
 
| 403 | 50 | 101 | wantarray ? : | 
 
| 422 | 0 | 18 | if ($dbh->{'dbi_default_methods'}{$method} and $dbh->{'go_policy'}->skip_default_methods) | 
 
| 431 | 0 | 18 | if ($locally) | 
 
| 432 | 0 | 0 | if ref $locally eq 'CODE' | 
 
| 461 | 6 | 51 | unless $dbh->SUPER::FETCH('Active') | 
 
| 464 | 24 | 27 | $skip_ping ? : | 
 
| 469 | 0 | 0 | unless my $response = $dbh->{'go_response'} | 
 
| 481 | 7 | 2401 | if ($attrib =~ /^[a-z]/ and not $attrib =~ /^go_/) | 
 
| 493 | 696 | 6647 | if ($attrib eq 'AutoCommit') | 
 
| 494 | 0 | 696 | unless $value | 
 
| 495 | 696 | 0 | $value ? : | 
 
| 499 | 788 | 14 | if $dbh_local_store_attrib{$attrib} or $attrib =~ /^private_/ or not $dbh->FETCH('Active') | 
 
| 507 | 10 | 0 | if $DBD::Gofer::xxh_local_store_attrib_if_same_value{$attrib} and do {
	my $crnt = $dbh->FETCH($attrib);
local $^W;
defined $value ^ defined $crnt ? 0 : $value eq $crnt
} | 
 
| 510 | 0 | 10 | defined $value ^ defined $crnt ? : | 
 
| 516 | 4 | 0 | if $dbh->FETCH('Warn') | 
 
| 529 | 0 | 1104 | unless $dbh->FETCH('Active') | 
 
| 532 | 38 | 1066 | if $attr | 
 
| 542 | 1084 | 20 | if $attr and not %$attr | 
 
| 557 | 594 | 510 | unless ($skip_prepare_check) | 
 
| 558 | 72 | 522 | unless $sth->go_sth_method | 
 
| 586 | 2157 | 904 | if (my $ParamValues = $sth->{'ParamValues'}) | 
 
| 592 | 0 | 2157 | if (@params > 9 and ($sth->{'Database'}{'go_dsn'} || '') =~ /dbi:Sybase/) | 
 
| 605 | 0 | 3061 | unless my $dbh = $sth->{'Database'} | 
 
| 611 | 2467 | 594 | if $sth->{'go_method_calls'} | 
 
| 615 | 0 | 3061 | if $meta->{'go_last_insert_id_args'} | 
 
| 621 | 2905 | 156 | if $dbh_attribute_update eq 'every' or $dbh->{'go_request_count'} == 1 | 
 
| 624 | 0 | 3061 | unless my $transport = $sth->{'go_transport'} | 
 
| 627 | 2 | 3059 | if defined $sth->{'go_cache'} | 
 
| 631 | 0 | 3061 | unless $sth->{'go_response'} = $response | 
 
| 635 | 2917 | 144 | if (my $dbh_attributes = $response->dbh_attributes) | 
 
| 645 | 2989 | 72 | if ($response->sth_resultsets) { } | 
 
| 663 | 0 | 5378 | if defined $attr | 
 
| 683 | 96 | 3179 | unless (my $response = $sth->{'go_response'}) | 
 
| 689 | 0 | 3179 | unless my $resultset_list = $response->sth_resultsets | 
 
| 692 | 180 | 2999 | unless my $meta = shift @$resultset_list | 
 
| 706 | 2472 | 527 | if (($NUM_OF_FIELDS || 0) > 0) | 
 
| 707 | 2180 | 292 | $rowset ? : | 
 
| 709 | 292 | 2180 | if defined $err | 
 
| 711 | 2180 | 292 | if $rowset | 
 
| 739 | 4624 | 153 | if @$resultset | 
 
| 755 | 30 | 184 | if ref $slice or defined $max_rows | 
 
| 771 | 6428 | 0 | if $sth_local_store_attrib{$attrib} or $attrib =~ /^private_/ | 
 
| 778 | 0 | 0 | if $sth->FETCH('Warn') |