Bug 8867 - [!] nscd would cache resolved hosts out-of box
: [!] nscd would cache resolved hosts out-of box
Status: CLOSED FIXED
: Sisyphus
(All bugs in Sisyphus/nscd)
: unstable
: all Linux
: P2 critical
Assigned To:
:
:
:
:
: 9199 14167
  Show dependency tree
 
Reported: 2006-01-18 18:06 by
Modified: 2008-01-26 01:42 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2006-01-18 18:06:23
С /etc/nscd.conf по умолчанию, содержащим enable-cache hosts yes (и далее) --
/var/db/nscd/hosts разрастается до существенных размеров (~200k), что приводит
к
сегфолтам nscd примерно после десяти секунд работы:

epoll_ctl(14, EPOLL_CTL_ADD, 15, {EPOLLRDNORM, {u32=15, u64=15}}) = 0
epoll_wait(14, {{EPOLLRDNORM, {u32=15, u64=15}}}, 100, 29976) = 1
time(NULL)                              = 1137569051
epoll_ctl(14, EPOLL_CTL_DEL, 15, {0, {u32=0, u64=0}}) = 0
kill(30300, SIGRTMIN)                   = 0
epoll_wait(14, {{EPOLLRDNORM, {u32=11, u64=11}}}, 100, 29988) = 1
time(NULL)                              = 1137569058
accept(11, 0, NULL)                     = 15
epoll_ctl(14, EPOLL_CTL_ADD, 15, {EPOLLRDNORM, {u32=15, u64=15}}) = 0
epoll_wait(14, {{EPOLLRDNORM, {u32=15, u64=15}}}, 100, 29976) = 1
time(NULL)                              = 1137569058
epoll_ctl(14, EPOLL_CTL_DEL, 15, {0, {u32=0, u64=0}}) = 0
kill(30301, SIGRTMIN)                   = 0
epoll_wait(14, bfb36c30, 100, 29988)    = -1 EINTR (Interrupted system call)
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
Process 30291 detached

Если поднять debug до 3, то в /var/log/messages при этом:

Jan 18 12:40:30 router nscd: 30397 no more memory for database 'hosts'
------- Comment #1 From 2006-02-17 14:44:29 -------
ping
------- Comment #2 From 2006-02-17 17:40:22 -------
У меня сейчас нет установок с nscd, не могли бы посмотреть в чём дело?
------- Comment #3 From 2006-03-05 16:22:39 -------
Кстати, nss_ldap не используется?
См. тж. http://sourceware.org/bugzilla/show_bug.cgi?id=2114
------- Comment #4 From 2006-03-05 21:15:37 -------
Используется.  На момент фиксации проблемы -- вроде уже наш последний.
Всё-таки кажется мне, что не барское это дело -- вместо кэширующего DNS
напрягаться, если пупок не тянет...
------- Comment #5 From 2006-10-09 03:15:27 -------
Так ведь max-db-size 33554432.
Оно ещё падает, мне вникать или нет?
------- Comment #6 From 2007-04-08 19:15:00 -------
В общем, мне продолжает казаться, что на серверах с существенным трафиком
DNS-запросов это лишнее тонкое место.  Даже при 32M кэша он неправилен (лучше и
понятнее caching nameserver) и неочевиден в случае проблем.

Отключи его по умолчанию, или мне посмотреть по конфигурациям в других дистрах
сначала?
------- Comment #7 From 2007-04-08 19:18:50 -------
nscd можно положить с любым количеством памяти из коробки... Лучше бы ему из
коробки вообще таблицу hosts не трогать, я честно не встречал тех, ктобы
раздавал ее через ldap...
------- Comment #8 From 2007-11-24 14:37:50 -------
ping (вместе с #6570)
------- Comment #9 From 2008-01-26 01:02:12 -------
(In reply to comment #7)
> nscd можно положить с любым количеством памяти из коробки... Лучше бы ему из
> коробки вообще таблицу hosts не трогать, я честно не встречал тех, ктобы
> раздавал ее через ldap...

OK, в 2.5.1-alt2-2-gc9428f7 по умолчанию выключил enable-cache hosts.
------- Comment #10 From 2008-01-26 01:42:40 -------
Спасибо :-)  В бранч положишь?