<br><br><div class="gmail_quote">On Fri, Mar 9, 2012 at 1:25 PM, Ignacio Serantes <span dir="ltr"><<a href="mailto:kde@aynoa.net">kde@aynoa.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi,<div><br></div><div>I'm not sure but seems like creating a resource with Nepomuk.Resource() is slow than before and needs more CPU. This is a point that probably Ehrichs could confirm better than me.</div></blockquote>
<div><br>Yup. It should be slower, we're now doing error checking. I'm not sure about it needing more CPU than before, though.<br><br></div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">


<div>An about the synchronous has it's advantages where there is a sort in client side, there is a lot of resources, you are handling correctly the fetch on demand and you are connecting to an internet server but, if  there is performance issues returning 144 records from a local database server because the operation is synchronous, I think we have a little problem. In fact with so few records probably asynchronous operation will be slow in total time ;).</div>
</blockquote><div><br>Uhh. I lost you. Isn't 144 records a lot?<br><br>What happens with the synchronous version is -<br><br>1. One blocking query to get all the resource uris of type nao:Tag<br>2. One query for each nao:Tag in order to load *all* of its properties, and then store them in a cache.<br>
<br>Considering that we do not need all of the properties and we only require a label. One query would be a lot better, even if it is synchronous.<br> <br></div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">




<div><br></div><div>How many queries are required to create a resource? Is cache working as expected? I know there is a cache because I have issues, expected cache issues :), developing nepoogle so it's still working as expected? Obviously there is something different in the last version of KDE.</div>
</blockquote><div><br>What kind of cache issues are you experiencing? Cause with 4.8.1 we have added extra code to make sure that the cache is always up to date.<br> <br></div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">



<div><br></div><div><div><div></div><div class="h5"><div class="gmail_quote">On Fri, Mar 9, 2012 at 6:52 AM, Vishesh Handa <span dir="ltr"><<a href="mailto:me@vhanda.in" target="_blank">me@vhanda.in</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br><br><div class="gmail_quote"><div>On Fri, Mar 9, 2012 at 1:39 AM, Ignacio Serantes <span dir="ltr"><<a href="mailto:kde@aynoa.net" target="_blank">kde@aynoa.net</a>></span> wrote:<br>




</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>
Hi,<div><br></div><div>Just installed KDE 4.8.1 I found a severe performance issue with my plasmoid Drop2TagIcon.</div><div><br></div><div>Some investigation reveals that the problem is the call to Nepomuk.Tag.allTags() and, as I have 5 Drop2TagIcon in each of my four activities, the final result is that Plasma was totally frozen.</div>







<div><br></div></div><div>Sadly this seems not restricted to Python, in irc Jörg Ehrichs has similar issues with Conquirere and a few minutes ago, when I'm trying to tag files using Dolphin in the old fashion way, I discover that the problem is here too.up</div>





</blockquote><div><br>Yup. Nepomuk::Tag::allTags() is synchronous, and ideally, shouldn't be used.<br><br>I've noticed the performance impact as well.<br><br></div><div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">







<div><br></div><div>More information:</div><div>- I have only 144 tags.</div><div>- Over 7-8 seconds passed between I click in Dolphin "Add Tags..." and the dialog is displayed. </div><div>- Meanwhile over 33% of my dual core CPU is used by the nepomukservicestub that launches virtuoso.</div>







<div>- The next query:</div><div><br></div><div>SELECT ?uri ?label</div><div>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px">WHERE {</p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px">  ?uri rdf:type nao:Tag .</p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px">  OPTIONAL { ?uri nao:prefLabel ?label . } .</p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px">} ORDER BY ?label</p></div><div><br></div><div>took over 150-170 milliseconds using NepSak and consuming 6% for an instant.</div></blockquote></div>




<div>
<br>That seems decent. I was going to use the QueryLibrary, but maybe I could directly use sparql.<br> <br></div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">





<div><br></div><span><font color="#888888"><font color="#888888">

<div>-- <br>Best wishes,<div>Ignacio</div><div><br></div><br>
</div>
</font><br>_______________________________________________<br>
Nepomuk mailing list<br>
<a href="mailto:Nepomuk@kde.org" target="_blank">Nepomuk@kde.org</a><br>
<a href="https://mail.kde.org/mailman/listinfo/nepomuk" target="_blank">https://mail.kde.org/mailman/listinfo/nepomuk</a><br>
<br></font></span></blockquote></div><br>
</blockquote></div><br><br clear="all"><div><br></div></div></div><font color="#888888">-- <br>Best wishes,<div>Ignacio</div><div><br></div><br>
</font></div>
<br>_______________________________________________<br>
Nepomuk mailing list<br>
<a href="mailto:Nepomuk@kde.org">Nepomuk@kde.org</a><br>
<a href="https://mail.kde.org/mailman/listinfo/nepomuk" target="_blank">https://mail.kde.org/mailman/listinfo/nepomuk</a><br>
<br></blockquote></div><br>