Hi, 
  I also hit the bug when I try the feature of release memory to system.  The 
init_lru_crawler() is call too late at the main(), so if you start with crawler 
option, the memcached will hung at item_crawler_thread(). Because the 
lru_crawler_cond is not  initialized. You can start lru crawler in command, it 
will work ok.
 
For detail : https://github.com/memcached/memcached/pull/93


  Best regards,

  Jason CHAN

> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of
> [email protected]
> Sent: Friday, December 12, 2014 5:56 AM
> To: [email protected]
> Subject: Issue 388 in memcached: lru_crawler - daemon hangs
> 
> Status: New
> Owner: ----
> Labels: Type-Defect Priority-Medium
> 
> New issue 388 by [email protected]: lru_crawler - daemon hangs
> https://code.google.com/p/memcached/issues/detail?id=388
> 
> What steps will reproduce the problem?
> 1. Start memcached with lru_crawler enabled:
> > memcached -l 127.0.0.1 -p 65000 -o lru_crawler -d -u nobody
> 2. Store several keys with small expire time and wait when expiration time
> leaved.
> 3. Start craler with "lru_crawler crawl all"
> 4. No items crawled, but there is expired unfetched items in stats command.
> 4. Try to disable crawler - there is error.
> 5. Try to restart crawler - daemon hangs.
> 
> What is the expected output? What do you see instead?
> 
> 4. Show stats - you see than "STAT lru_crawler_running 1" but "STAT
> crawler_reclaimed 0" and there is expired items in cache.
> 5. Telnet to daemon and try to stop crawler:
> > lru_crawler disable
> > ERROR failed to stop lru crawler thread
> 6. Try to start crawler:
> > lru_crawler crawl all
> > OK
> > add a 0 1 1
> 1
> 
> ...
> daemon hangs
> 
> What version of the product are you using? On what operating system?
> Memcached 1.4.21
> CentOS 6.5
> 
> 
> Please provide any additional information below.
> 
> Memcached daemon use 100% cpu per thread. Strace output:
> 
> epoll_wait(3, {}, 32, 108)              = 0
> epoll_wait(3, {}, 32, 1000)             = 0
> epoll_wait(3, {}, 32, 1000)             = 0
> ...
> epoll_wait(3, {}, 32, 1000)             = 0
> ...
> 
> 
> --
> You received this message because this project is configured to send all issue
> notifications to this address.
> You may adjust your notification preferences at:
> https://code.google.com/hosting/settings
> 
> --
> 
> ---
> You received this message because you are subscribed to the Google Groups
> "memcached" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"memcached" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to