• Dag Erling Smørgrav's avatar
    Mostly finish the LRU code and its integration: · 059e1bdf
    Dag Erling Smørgrav authored
     - Wrap the storage code so we don't need to duplicate the "toss out some old
       crap and try again" logic everywhere.  This will also help when / if we
       decide to add support for multiple concurrent storage arenas.
    
     - While I'm at it, implement sma_trim().
    
     - Rework the interaction between the LRU and expiry code.  Instead of placing
       objects retired by the LRU on death row, immediately terminate them.
    
     - Give the LRU code its own fake session and worker so we don't have to pass
       it a session pointer.
    
     - Rework the LRU API, and add LRU_DiscardOne() which discards a single
       object.  This is what the stevedore code uses.
    
    Known or suspected issues:
    
     - The LRU and expiry code should use the same mutex, and / or the possiblity
       for races between them should be examined closely.
    
     - LRU_Init() needs to be looked at and possibly moved.
    
     - LRU_DiscardSpace() and LRU_DiscardTime() are unused and quite possibly useless.
    
     - Logging and statistics related to the LRU need more attention.
    
     - The stevedore API can probably be improved.
    
    
    git-svn-id: http://www.varnish-cache.org/svn/trunk/varnish-cache@1586 d4fa192b-c00b-0410-8231-f00ffab90ce4
    059e1bdf
Name
Last commit
Last update
..
Makefile.am Loading commit data...
cache.h Loading commit data...
cache_acceptor.c Loading commit data...
cache_acceptor.h Loading commit data...
cache_acceptor_epoll.c Loading commit data...
cache_acceptor_kqueue.c Loading commit data...
cache_acceptor_poll.c Loading commit data...
cache_backend.c Loading commit data...
cache_ban.c Loading commit data...
cache_center.c Loading commit data...
cache_cli.c Loading commit data...
cache_expire.c Loading commit data...
cache_fetch.c Loading commit data...
cache_hash.c Loading commit data...
cache_http.c Loading commit data...
cache_lru.c Loading commit data...
cache_main.c Loading commit data...
cache_pipe.c Loading commit data...
cache_pool.c Loading commit data...
cache_response.c Loading commit data...
cache_session.c Loading commit data...
cache_synthetic.c Loading commit data...
cache_vary.c Loading commit data...
cache_vcl.c Loading commit data...
cache_vrt.c Loading commit data...
cache_vrt_acl.c Loading commit data...
cache_vrt_re.c Loading commit data...
cache_ws.c Loading commit data...
common.h Loading commit data...
flint.lnt Loading commit data...
flint.sh Loading commit data...
hash_classic.c Loading commit data...
hash_simple_list.c Loading commit data...
hash_slinger.h Loading commit data...
heritage.h Loading commit data...
instance.c Loading commit data...
mgt.h Loading commit data...
mgt_child.c Loading commit data...
mgt_cli.c Loading commit data...
mgt_cli.h Loading commit data...
mgt_event.c Loading commit data...
mgt_event.h Loading commit data...
mgt_param.c Loading commit data...
mgt_vcc.c Loading commit data...
rfc2616.c Loading commit data...
shmlog.c Loading commit data...
steps.h Loading commit data...
stevedore.c Loading commit data...
stevedore.h Loading commit data...
storage_file.c Loading commit data...
storage_malloc.c Loading commit data...
tcp.c Loading commit data...
varnishd.1 Loading commit data...
varnishd.c Loading commit data...
vclflint.lnt Loading commit data...
vclflint.sh Loading commit data...