summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Vogt <mvo@ubuntu.com>2014-04-07 09:41:20 +0200
committerMichael Vogt <mvo@ubuntu.com>2014-04-07 09:41:20 +0200
commitcf6bbca0a93b21ab7d3378f26dd9b57951a1d987 (patch)
tree5a3efc0cc314ff0171d898b797ea053158bdb485
parent37497bd5fa0f070e12c1c28d849aef1af8f369b5 (diff)
ensure "--db" also works with the new srcpkgdb
-rw-r--r--ftparchive/apt-ftparchive.cc8
-rw-r--r--ftparchive/cachedb.cc2
-rwxr-xr-xtest/integration/test-apt-ftparchive-src-cachedb27
3 files changed, 35 insertions, 2 deletions
diff --git a/ftparchive/apt-ftparchive.cc b/ftparchive/apt-ftparchive.cc
index 74fc7681f..ba71ee225 100644
--- a/ftparchive/apt-ftparchive.cc
+++ b/ftparchive/apt-ftparchive.cc
@@ -690,6 +690,10 @@ static bool SimpleGenPackages(CommandLine &CmdL)
if (Packages.RecursiveScan(CmdL.FileList[1]) == false)
return false;
+ // Give some stats if asked for
+ if(_config->FindB("APT::FTPArchive::ShowCacheMisses", false) == true)
+ c0out << " Misses in Cache: " << Packages.Stats.Misses<< endl;
+
return true;
}
/*}}}*/
@@ -746,6 +750,10 @@ static bool SimpleGenSources(CommandLine &CmdL)
if (Sources.RecursiveScan(CmdL.FileList[1]) == false)
return false;
+ // Give some stats if asked for
+ if(_config->FindB("APT::FTPArchive::ShowCacheMisses", false) == true)
+ c0out << " Misses in Cache: " << Sources.Stats.Misses<< endl;
+
return true;
}
/*}}}*/
diff --git a/ftparchive/cachedb.cc b/ftparchive/cachedb.cc
index 4feb7bbfb..d589c4c5a 100644
--- a/ftparchive/cachedb.cc
+++ b/ftparchive/cachedb.cc
@@ -515,7 +515,7 @@ bool CacheDB::Finish()
if (CurStat.Flags == OldStat.Flags &&
CurStat.mtime == OldStat.mtime)
return true;
-
+
// Write the stat information
CurStat.Flags = htonl(CurStat.Flags);
CurStat.FileSize = htonl(CurStat.FileSize);
diff --git a/test/integration/test-apt-ftparchive-src-cachedb b/test/integration/test-apt-ftparchive-src-cachedb
index 9cc0a98de..1af193632 100755
--- a/test/integration/test-apt-ftparchive-src-cachedb
+++ b/test/integration/test-apt-ftparchive-src-cachedb
@@ -105,6 +105,30 @@ mkdir -p aptarchive/dists/test/main/source/
mkdir aptarchive-overrides
mkdir aptarchive-cache
+
+
+
+# generate with --db option
+(cd aptarchive && aptftparchive --db ./test.db sources pool/main/ \
+ -o APT::FTPArchive::ShowCacheMisses=1 \
+ > dists/test/main/source/Sources \
+ 2> stats-out.txt
+ testequal " Misses in Cache: 2" grep Misses stats-out.txt
+)
+assert_correct_sources_file
+
+# generate with --db option (again to ensure its in the cache)
+(cd aptarchive && aptftparchive --db ./test.db sources pool/main/ \
+ -o APT::FTPArchive::ShowCacheMisses=1 \
+ > dists/test/main/source/Sources \
+ 2> stats-out.txt
+ testequal " Misses in Cache: 0" grep Misses stats-out.txt
+)
+assert_correct_sources_file
+
+
+
+# get ready for the "apt-ftparchive generate" command
cat > apt-ftparchive.conf <<"EOF"
Dir {
ArchiveDir "./aptarchive";
@@ -135,7 +159,6 @@ Tree "dists/test" {
};
EOF
-
# generate (empty cachedb)
aptftparchive generate apt-ftparchive.conf -o APT::FTPArchive::ShowCacheMisses=1 2> stats-out.txt
testequal " Misses in Cache: 2" grep Misses stats-out.txt
@@ -148,6 +171,8 @@ aptftparchive generate apt-ftparchive.conf -o APT::FTPArchive::ShowCacheMisses=1
testequal " Misses in Cache: 0" grep Misses stats-out.txt
assert_correct_sources_file
+
+
# generate invalid files
mkdir aptarchive/pool/invalid
printf "meep" > aptarchive/pool/invalid/invalid_1.0.dsc