Bug 306341

Summary: The indexer does not immediately obey when told to no longer index a particular directory
Product: nepomuk Reporter: Szczepan Hołyszewski <rulatir>
Component: fileindexerAssignee: Nepomuk Bugs Coordination <nepomuk-bugs>
Status: RESOLVED FIXED    
Severity: normal CC: wolf.behrenhoff
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In:

Description Szczepan Hołyszewski 2012-09-06 12:55:36 UTC
When the indexer is indexing files in a directory, and I disable indexing of that directory or one of its ancestors, the indexer does not react immediately and continues indexing files in that directory.


Reproducible: Didn't try

Steps to Reproduce:
1. Hover over nepomuk icon in the taskbar to see which directory it is indexing.
2. Disable indexing of that directory
Actual Results:  
Nepomuk indexer still indexes that directory

Expected Results:  
Nepomuk indexer should immediately abandon indexing that directory.
Comment 1 Vishesh Handa 2012-12-24 07:19:00 UTC
Git commit c88f0da583b842aed9d8844d94cc5a3c7cf1cdab by Vishesh Handa.
Committed on 23/12/2012 at 21:50.
Pushed by vhanda into branch 'KDE/4.10'.

FileIndexer: Do not run the IndexCleaner and IndexingQueues in parallel

The IndexCleaner and IndexingQueues now no longer run in parallel, the
queues only run once the cleaner has finished. This is important cause
we now have a two stage indexing, so the fileIQ could continue to index
files whose contents will soon be cleared, or once they are cleared, or
worse while a file is being cleared (We do not have transaction support,
so this could end very badly)

This also solves the bug where the indexer wouldn't immediately abandon
indexing of a particular directory when the config file changed.

M  +1    -3    services/fileindexer/fileindexingqueue.cpp
M  +6    -1    services/fileindexer/fileindexingqueue.h
M  +21   -4    services/fileindexer/indexscheduler.cpp
M  +6    -0    services/fileindexer/indexscheduler.h

http://commits.kde.org/nepomuk-core/c88f0da583b842aed9d8844d94cc5a3c7cf1cdab