Changeset 585
- Timestamp:
- 03/15/06 19:11:12 (7 years ago)
- Location:
- trunk/pdns/pdns
- Files:
-
- 5 modified
-
Makefile.am (modified) (1 diff)
-
arguments.hh (modified) (1 diff)
-
docs/pdns.sgml (modified) (2 diffs)
-
recursor_cache.cc (modified) (3 diffs)
-
recursor_cache.hh (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/pdns/pdns/Makefile.am
r576 r585 2 2 AM_CPPFLAGS=-Ibackends/bind @THREADFLAGS@ 3 3 4 EXTRA_DIST = docs/Makefile \4 EXTRA_DIST = docs/Makefile docs/expand \ 5 5 docs/gslb-operations.sgml docs/powerdns-case.sgml docs/powerdns-install.sgml \ 6 6 docs/powerdns-overview.sgml docs/powerdns-technical.sgml \ -
trunk/pdns/pdns/arguments.hh
r568 r585 27 27 #include "misc.hh" 28 28 #include "ahuexception.hh" 29 30 29 31 30 using namespace std; -
trunk/pdns/pdns/docs/pdns.sgml
r576 r585 139 139 <listitem> 140 140 <para> 141 Cache was pruned every minute, which was too often. Now once every 5 minutes, c574. 141 Move recursor to the incredible boost::multi_index_container (c580). This brings a huge improvement 142 in cache pruning times. 142 143 </para> 143 144 </listitem> … … 168 169 On some compilers, processing of NAPTR records could cause the server to crash. Reported by Bernd Froemel 169 170 in t29, fixed in c538. 171 </para> 172 </listitem> 173 <listitem> 174 <para> 175 Backend errors could make the whole nameserver exit under some circumstances, notably using the LDAP backend. Fixed in c583, reported in 176 t62. 170 177 </para> 171 178 </listitem> -
trunk/pdns/pdns/recursor_cache.cc
r580 r585 4 4 #include <boost/shared_ptr.hpp> 5 5 #include "dnsrecords.hh" 6 6 7 using namespace std; 7 8 using namespace boost; 8 9 9 10 #include "config.h" 10 #define GCC_SKIP_LOCKING11 11 #ifdef GCC_SKIP_LOCKING 12 12 #include <bits/atomicity.h> … … 153 153 d_cache.replace(stored, ce); 154 154 } 155 155 156 156 157 157 158 void MemRecursorCache::doPrune(void) … … 214 215 dt.set(); 215 216 ttdindex.erase(ttdindex.begin(), j); 216 // cout<<"Erase took "<< dt.udiff()<<" usec, looked: "<<looked<<", quick: "<<quickZonk<<", full: ";217 // cout<<fullZonk<<", partial: "<<partialZonk<<", no: "<<noZonk<<"\n";217 // cout<<"Erase took "<< dt.udiff()<<" usec, looked: "<<looked<<", quick: "<<quickZonk<<", full: "; 218 // cout<<fullZonk<<", partial: "<<partialZonk<<", no: "<<noZonk<<"\n"; 218 219 // cache_t(d_cache).swap(d_cache); 219 220 } -
trunk/pdns/pdns/recursor_cache.hh
r582 r585 16 16 using namespace boost; 17 17 using namespace ::boost::multi_index; 18 18 19 19 20 class MemRecursorCache : public boost::noncopyable // : public RecursorCache … … 43 44 return 4+d_string.size(); 44 45 } 46 45 47 }; 46 48 … … 61 63 struct CacheEntry 62 64 { 65 CacheEntry(){} 63 66 CacheEntry(const string& name, const vector<StoredRecord>& records) : d_name(name), d_records(records) 64 67 {} … … 73 76 return earliest; 74 77 } 78 75 79 }; 76 80 … … 83 87 > cache_t; 84 88 85 86 89 private: 87 90 cache_t d_cache; 91 88 92 }; 89 93