CVSROOT: /cvs/gnome Module name: beagle Changes by: joeshaw 06/01/27 12:13:45
Modified files: Util : DirectoryWalker.cs ExceptionHandlingThread.cs beagled : BeagleDaemon.cs beagled/EvolutionMailDriver: EvolutionMailDriver.cs EvolutionMailIndexableGenerator.cs MailCrawler.cs beagled/FileSystemQueryable: FileNameFilter.cs glue : Makefile.am search : beagle-search.in Added files: glue : thread-glue.c Log message: Add a neat little hack to abort all of our ExceptionHandlingThreads on SIGQUIT, which causes a ThreadAbortException to be thrown. Catch it and print the stack traces of all threads. This lets us identify what threads are using 100% CPU and why, although it's certainly not perfect. Using this code, I identified a bottleneck in the evolution mail backend. Make the FileFilter delegate in DirectoryWalker public and allow us to pass in our own filters to DirectoryWalker. For large cached IMAP dirs this saves us several seconds and thousands of allocations. When outputting memory information, do it every half second for the first 10 seconds. Store flags in the evolution mail mutable index, and create a prop-change indexable for changes only to flags, so that we don't have to reindex whole emails. This causes a bump in the index version of the evo mail backend. Remove some dead code from the evo mail backend, add some debugging info. URL : http://cvs.gnome.org/bonsai/cvsquery.cgi?branch=&dir=beagle&who=joeshaw&date=explicit&mindate=2006-01-27%2012:12&maxdate=2006-01-27%2012:14 _______________________________________________ cvs-commits-list mailing list cvs-commits-list@gnome.org http://mail.gnome.org/mailman/listinfo/cvs-commits-list