testbot/lib: Avoid calling DBIBackEnd::GetDb() unnecessarily.
Francois Gouget
fgouget at codeweavers.com
Mon Oct 29 09:39:47 CDT 2012
These calls are a bit more expensive now that they verify that the connection is still live. So SaveCollection() should really call it only once.
---
testbot/lib/ObjectModel/DBIBackEnd.pm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/testbot/lib/ObjectModel/DBIBackEnd.pm b/testbot/lib/ObjectModel/DBIBackEnd.pm
index 72ff3c5..8af9c8b 100644
--- a/testbot/lib/ObjectModel/DBIBackEnd.pm
+++ b/testbot/lib/ObjectModel/DBIBackEnd.pm
@@ -434,16 +434,17 @@ sub SaveCollection
my $self = shift;
my $Collection = shift;
+ my $Db = $self->GetDb();
my ($MasterColNames, $MasterColValues) = $Collection->GetMasterCols();
my $UpdateQuery = $self->BuildUpdateStatement($Collection->GetTableName(),
$Collection->GetPropertyDescriptors(),
$MasterColNames);
- my $UpdateStatement = $self->GetDb()->prepare($UpdateQuery);
+ my $UpdateStatement = $Db->prepare($UpdateQuery);
my $InsertQuery = $self->BuildInsertStatement($Collection->GetTableName(),
$Collection->GetPropertyDescriptors(),
$MasterColNames);
- my $InsertStatement = $self->GetDb()->prepare($InsertQuery);
+ my $InsertStatement = $Db->prepare($InsertQuery);
foreach my $Key (@{$Collection->GetKeysNoLoad()})
{
@@ -465,7 +466,7 @@ sub SaveCollection
die "Sequence property spans multiple columns";
}
- $Item->PutColValue(@{$ColNames}[0], $self->GetDb()->{'mysql_insertid'});
+ $Item->PutColValue(@{$ColNames}[0], $Db->{'mysql_insertid'});
$Collection->KeyChanged($Key, $Item->GetKey());
}
}
--
1.7.10.4
More information about the wine-patches
mailing list