Я использую вызов POSIX nftw()
для перемещения по структуре каталогов. Структура каталогов является плоской - всего 4 файла и нет подкаталогов.Ошибка дескриптора файла в nftw (FTW_CHDIR)?
Однако, когда я называю nftw() много раз на этой плоской директории, то я получаю сообщение об ошибке через некоторое время:
"too many open file handles".
Оказалось, что это происходит, когда флаг FTW_CHDIR
используется.
Вы согласны с тем, что это ошибка в реализации Linux nftw()?
UPDATE
Исправление теперь доступна в GLibC хранилищах.
вот некоторые ссылки на исходный код, который я использовал для тестирования:
- main.cpp: http://sourceware.org/bugzilla/attachment.cgi?id=4586&action=view
- Makefile: http://sourceware.org/bugzilla/attachment.cgi?id=4587&action=view
UPDATE
- MacOS-X - также ударил по ошибке
- solaris9, Solaris10 и AIX 5.3 сделать не есть ошибка
Вау, это было быстро исправить - http://sourceware.org/git/?p=glibc.git;a=commit;h=247fdf2e2b798378d8aeaac1ee6f4ba0a49f31f3 – mark4o
+1 для подачи ошибки отчет и последующие действия. –