Version: (using KDE KDE 3.2.3) Installed from: Mandrake RPMs OS: Linux Kfind freezes/locks up permanently when I search for files outside my home directory. Im not running as root. No results, no nothing. Locks up upon start of the search. Also had this issue in KDE 3.2.2 I got the feeling that it had something to do with lacking file permissions. But what do I know, Ive only been running Linux for a few weeks. tnx in advance for any help or solution daniel
Yes this bug has been reported many times in Mandrake 10.1 Community. To reproduce, I just have to open KFind and search "man" in /usr After 10 seconds, KFind is freezing... see http://qa.mandrakesoft.com/show_bug.cgi?id=7504 Some said it seems related to loops in symlinks. Does Kfind manage correctly recursive simlinks ?
Is this the same issue as : http://bugs.kde.org/show_bug.cgi?id=68220 I can repro 100% of the time on Kde 3.3. If I kill famd first, kfind works great.
*** This bug has been confirmed by popular vote. ***
CVS commit by waba: Disable recursively watching for updates BUG: 68220 BUG: 77854 BUG: 77846 BUG: 79512 BUG: 85802 M +13 -0 kfinddlg.cpp 1.25 --- kdebase/kfind/kfinddlg.cpp #1.24:1.25 @@ -127,4 +127,16 @@ void KfindDlg::startSearch() dirwatch->addDir(query->url().path(),true); +#if 0 + // waba: Watching for updates is disabled for now because even with FAM it causes too + // much problems. See BR68220, BR77854, BR77846, BR79512 and BR85802 + // There are 3 problems: + // 1) addDir() keeps looping on recursive symlinks + // 2) addDir() scans all subdirectories, so it basically does the same as the process that + // is started by KQuery but in-process, undoing the advantages of using a seperate find process + // A solution could be to let KQuery emit all the directories it has searched in. + // Either way, putting dirwatchers on a whole file system is probably just too much. + // 3) FAM has a tendency to deadlock with so many files (See BR77854) This has hopefully + // been fixed in KDirWatch, but that has not yet been confirmed. + //Getting a list of all subdirs if(tabWidget->isSearchRecursive() && (dirwatch->internalMethod() == KDirWatch::FAM)) @@ -134,4 +146,5 @@ void KfindDlg::startSearch() dirwatch->addDir(*it,true); } +#endif win->beginSearch(query->url());