[Nepomuk] Review Request 108962: BasicIndexingQueue: Use stacks instead of queues (take 2)

Simeon Bird bladud at gmail.com
Fri Feb 15 00:16:31 UTC 2013



> On Feb. 14, 2013, 8:10 p.m., Vishesh Handa wrote:
> > Seems good! I was a little scared to do this again.
> > 
> > I was also thinking about using the OptimizedByteArray or something similar. We're storing a LOT of urls which have common parts.

Yeah, maybe. I don't know. On my system with this patch it peaks at about 200 entries, which is a fair few, and they are probably mostly duplicates, it's true. But it only happens when the system is heavily indexing, and so the memory used is totally dwarfed by virtuoso-t's 500MB memory usage.


- Simeon


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/108962/#review27469
-----------------------------------------------------------


On Feb. 14, 2013, 5:10 p.m., Simeon Bird wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/108962/
> -----------------------------------------------------------
> 
> (Updated Feb. 14, 2013, 5:10 p.m.)
> 
> 
> Review request for Nepomuk and Vishesh Handa.
> 
> 
> Description
> -------
> 
>     BasicIndexingQueue: Use stacks instead of queues
>     
>     Similar to 2f33141aa6716550e38b11ec9a0b000dd74eea79, reverted by
>     b651f9231ac30072418bb06d602951f0f05da22c.
>     
>     The reason this broke recursive indexing was that it was taking the top
>     item from the stack with m_iterators.first(), but
>     QStack::top() == QVector::last(). Since we no longer have m_iterators,
>     anyway, we can just use a stack.
>     
>     Commit message from 2f33141aa:
>     
>     Iterating depth first will consume less memory than going breadth first.
>     Also stacks are based on QVectors which avoid the unnecessary extra
>     allocation in QLists.
> 
> Apply on top of Vishesh's fix for bug 310777
> 
> 
> Diffs
> -----
> 
>   services/fileindexer/basicindexingqueue.h 5d1c190 
>   services/fileindexer/basicindexingqueue.cpp b581786 
> 
> Diff: http://git.reviewboard.kde.org/r/108962/diff/
> 
> 
> Testing
> -------
> 
> Recursive indexing still works! m_paths is smaller than it used to be.
> 
> 
> Thanks,
> 
> Simeon Bird
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/nepomuk/attachments/20130215/50953ee1/attachment.html>


More information about the Nepomuk mailing list