[Nepomuk] [PATCH] Strigiservice Initial Run timing bug.
Sebastian Trüg
trueg at kde.org
Fri Apr 23 10:02:28 CEST 2010
The new patch looks very good. I will apply it and also backport it to 4.4.
As for the reduced speed:
* A default value of true is probably more sane but the default is not
used anyway (compare strigiservice.cpp:122
* If you pause you move the mouse which triggers the setting of reduced
speed which results in slower indexing. Does this explain the delay?
Cheers,
Sebastian
On 04/23/2010 09:02 AM, Vishesh Handa wrote:
> I've fixed it, but I've used seconds instead of minutes. It's easier
> this way.
>
> We have another problem. Even though the indexing is paused. I get an
> update that the indexingSpeed is being reduced. (Not Immediately. About
> 15-20 seconds after it has been paused)
>
> [/home/vishesh/kde/bin/nepomukservicestub]
> nepomukstrigiservice(3823)/nepomuk (strigi service)
> Nepomuk::IndexScheduler::setIndexingSpeed: 0 FullSpeed
> [/home/vishesh/kde/bin/nepomukservicestub]
> nepomukfilewatch(3825)/nepomuk (filewatch service)
> Nepomuk::FileWatch::watchFolder: "/home/vishesh/indexing"
> [/home/vishesh/kde/bin/nepomukservicestub]
> nepomukstrigiservice(3823)/nepomuk (strigi service)
> Nepomuk::IndexScheduler::setIndexingSpeed: 1 ReducedSpeed
>
> Normally indexing a folder, which has about 29 files takes about 1min 43
> seconds. (It has a mix of sounds & images). When I deliberately pause
> the indexing (via dbus), it gets paused. The strigi widget shows that
> it's paused and so does dbus. Yet, the above output is displayed in the
> terminal, and on unpausing, the indexer takes lesser time.
>
> I checked out IndexScheduler::waitForContinue, and it seems to be fine.
> I even added debugging statements and it is waiting. :-/ So, in the end
> I don't know whats wrong. Could someone else take a shot at this? BTW,
> this is happening with the earlier versions of the patch as well. I just
> didn't notice.
>
> *Other Things I noticed :*
> I was going through the source code of IndexScheduler and I saw a function
> void setReducedIndexingSpeed( bool reduced = false );
> Shouldn't the default value be true?
>
>
> - Vishesh Handa
>
>
> On Thu, Apr 22, 2010 at 12:41 AM, Sebastian Trüg <trueg at kde.org
> <mailto:trueg at kde.org>> wrote:
>
> On 04/21/2010 07:10 PM, Vishesh Handa wrote:
> >
> > But I just realized yet another issue (sorry): QTime only
> measures a
> > single day. In theory the initial indexing can take more than
> an hour.
> >
> >
> > True. But I think what you meant was that the initial indexing could
> > take more than a day. In which case the time will get wrapped once it
> > exceeds a day, and hence be incorrect.
> >
> > That means it could make more sense to measure the indexing
> time in
> > minutes only (let's face it, we do not care much about seconds
> and msecs
> > here). So maybe the best would be to remember the start of
> indexing as a
> > QDateTime and then sum up the minutes that have passed since then.
> >
> >
> > I don't get what you mean. If we just sum up the minutes since then we
> > wouldn't be accounting for the duration where the indexer was paused.
> > And that is the issue I wanted to address. Or maybe we could store the
> > dateTime when the initial indexing began, and store the paused time as
> > well (Is this what you meant?). But then the paused time is also
> > susceptible to the more than a day problem.
> >
> > Could you please elaborate a little bit more?
>
> I thought about storing the datetime when indexing starts. Then whenever
> we pause we do this:
>
> m_totalIndexingMinutes
> += getPassedMinutes(m_indexingStartTime
> QDateTime::currentDateTime());
>
> then when indexing is resumed we again remember the time:
>
> m_indexingStartTime = QDateTime::currentDateTime();
>
> Of course the method getPassedMinutes does not exist yet. ;)
>
> Cheers,
> Sebastian
>
>
More information about the Nepomuk
mailing list