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.
