DNSPacket r(false);
r.parse((char*)&pak[0], pak.size());
- /* this step is necessary to get a valid hash */
- DNSPacket cached(false);
- g_PC->get(&q, &cached);
+ /* this step is necessary to get a valid hash
+ we directly compute the hash instead of querying the
+ cache because 1/ it's faster 2/ no deferred-lookup issues
+ */
+ q.setHash(g_PC->canHashPacket(q.getString()));
const unsigned int maxTTL = 3600;
g_PC->insert(&q, &r, maxTTL);
pthread_join(tid[i], &res);
BOOST_CHECK_EQUAL(PC.size() + S.read("deferred-packetcache-inserts"), 400000);
+ BOOST_CHECK_EQUAL(S.read("deferred-packetcache-lookup"), 0);
BOOST_CHECK_SMALL(1.0*S.read("deferred-packetcache-inserts"), 10000.0);
for(int i=0; i < 4; ++i)
cerr<<"Hits: "<<S.read("packetcache-hit")<<endl;
cerr<<"Deferred inserts: "<<S.read("deferred-packetcache-inserts")<<endl;
cerr<<"Deferred lookups: "<<S.read("deferred-packetcache-lookup")<<endl;
+ cerr<<g_PCmissing<<endl;
+ cerr<<PC.size()<<endl;
*/
+
BOOST_CHECK_EQUAL(g_PCmissing + S.read("packetcache-hit"), 400000);
- BOOST_CHECK_GT(S.read("deferred-packetcache-inserts") + S.read("deferred-packetcache-lookup"), g_PCmissing);
+ BOOST_CHECK_EQUAL(S.read("deferred-packetcache-inserts") + S.read("deferred-packetcache-lookup"), g_PCmissing);
}
catch(PDNSException& e) {
cerr<<"Had error: "<<e.reason<<endl;