]> git.sur5r.net Git - bacula/docs/commitdiff
update accurate test
authorEric Bollengier <eric@eb.homelinux.org>
Wed, 7 Apr 2010 15:23:54 +0000 (17:23 +0200)
committerEric Bollengier <eric@eb.homelinux.org>
Wed, 7 Apr 2010 15:23:54 +0000 (17:23 +0200)
docs/techlogs/accurate-test.ods
docs/techlogs/accurate-test.pl

index 86439c2884e13d8cd5a5f917b115b62417595f0c..4a6317a8971e151204a067b2018b12da18355737 100644 (file)
Binary files a/docs/techlogs/accurate-test.ods and b/docs/techlogs/accurate-test.ods differ
index 61ee1fe4a17f1363c4a10ee2b06eaf86639c06c7..d43978961176cf3120b53fd57973abfe0e494362 100755 (executable)
@@ -197,6 +197,34 @@ WHERE FileIndex > 0 ORDER BY Temp.JobId, FileIndex ASC
             print "Big select takes ", scalar(time) - $begin, "secs for $ret->[0] records\n";
             print STDERR 
                 "new|$ret->[0]|$nb|", (scalar(time) - $begin),"\n";
+            print "Doing Accurate query...\n";
+        }
+        foreach my $i (1..4) {
+            my $begin = time;
+            my $ret = $dbh->selectrow_arrayref("SELECT count(1) from (
+SELECT Path.Path, Filename.Name, Temp.FileIndex, Temp.JobId, LStat, MD5 
+FROM ( 
+ SELECT FileId, Job.JobId AS JobId, FileIndex, File.PathId AS PathId,
+        File.FilenameId AS FilenameId, LStat, MD5 
+   FROM Job, File, 
+        ( SELECT MAX(JobTDate) AS JobTDate, PathId, FilenameId 
+            FROM File JOIN Job USING (JobId) WHERE File.JobId IN ($jobid) 
+           GROUP BY PathId, FilenameId
+        ) AS T1 
+  WHERE Job.JobId IN ($jobid)
+    AND T1.JobTDate = Job.JobTDate 
+    AND Job.JobId = File.JobId
+    AND T1.PathId = File.PathId
+    AND T1.FilenameId = File.FilenameId 
+ ) AS Temp 
+ JOIN Filename ON (Filename.FilenameId = Temp.FilenameId) 
+ JOIN Path ON (Path.PathId = Temp.PathId)
+WHERE FileIndex > 0 ORDER BY Temp.JobId, FileIndex ASC
+) as a") or die "Can't do query $DBI::errstr";
+
+            print "Big select without base takes ", scalar(time) - $begin, "secs for $ret->[0] records\n";
+            print STDERR 
+                "base|$ret->[0]|$nb|", (scalar(time) - $begin),"\n";
         }
         if (0) {
         foreach my $i (1..4) {