Virtually all the time spent on the query is spent in ConcatenableList, in the size() and get() methods.  Both have some pretty inefficient looking logic.  In get(), if the element retrieved is not the next, previous, or pre-previous, then the code iterates through the whole list up to the elements index.  Similarly with .size(), the code iterates through the lists, adding up each lists size.  I&#39;m guessing that in many cases the expense of doing this once is probably about the cost of converting to an ArrayList.  As an experiment I modified .size() to always convert to an ArrayList, and this cut the time to execute dramatically.<div>
<br></div><div><div><div><div><br><div class="gmail_quote">On Wed, Mar 4, 2009 at 12:02 PM, Matt Campbell <span dir="ltr">&lt;<a href="mailto:mkambol@gmail.com">mkambol@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
After syncing to a changelist I was still seeing lots of files in my directories that were showing version 0 in perforce.  I eventually got past this by starting from a totally clean slate and syncing.<div><br></div><div>
Still investigating, but it looks like changelist 11049 is the culprit.  The query I posted runs in 2.5 seconds with change 11048, and takes a full minute and a half with 11049.<div><div></div><div class="h5"><br>
<br><div class="gmail_quote">On Wed, Mar 4, 2009 at 11:16 AM, Julian Hyde <span dir="ltr">&lt;<a href="mailto:jhyde@pentaho.com" target="_blank">jhyde@pentaho.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div bgcolor="#FFFFFF"><div>There is no version 0 as such. If p4 sync &#39;gets&#39; version 0, it removes the file from your sandbox. Is that what you are seeing?<div><div></div><div><br><br>On Mar 4, 2009, at 6:36 AM, Matt Campbell &lt;<a href="mailto:mkambol@gmail.com" target="_blank">mkambol@gmail.com</a>&gt; wrote:<br>

<br></div></div></div><div><div></div><div><div></div><blockquote type="cite"><div>Hmmm.  I see many files in my directories that are marked as having version 0.  For example, I see MemberIterCalc.java in my sandbox, even though it was added much after the changelist I synched to.  Any ideas how this could happen?<br>


<br><div class="gmail_quote">On Wed, Mar 4, 2009 at 9:13 AM, John V. Sichi <span dir="ltr">&lt;<a href="mailto:jsichi@gmail.com" target="_blank"></a><a href="mailto:jsichi@gmail.com" target="_blank">jsichi@gmail.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>Matt Campbell wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I&#39;ve been trying to isolate when this issue was introduced, but am struggling a bit with perforce.  I&#39;m trying to sync to a changelist using something like:<br>
<br>
p4 sync //open/mondrian/...@10480<br>
<br>
This brings in the set of files from that changelist, but does not appear to delete files from future changelists.  <br>
What is the correct way to sync to a changelist?<br>
</blockquote>
<br></div>
That is the correct command.  It will delete files from future changelists, but it will not delete empty directories unless you have the rmdir option set in your client (the default is normdir).<br>
<br>
(Also, use p4 opened to make sure you don&#39;t have any files checked out before starting.)<br>
<br>
JVS<br>
<br>
_______________________________________________<br>
Mondrian mailing list<br>
<a href="mailto:Mondrian@pentaho.org" target="_blank"></a><a href="mailto:Mondrian@pentaho.org" target="_blank">Mondrian@pentaho.org</a><br>
<a href="http://lists.pentaho.org/mailman/listinfo/mondrian" target="_blank"></a><a href="http://lists.pentaho.org/mailman/listinfo/mondrian" target="_blank">http://lists.pentaho.org/mailman/listinfo/mondrian</a><br>
</blockquote></div><br>
</div></blockquote><blockquote type="cite"><div><span>_______________________________________________</span><br><span>Mondrian mailing list</span><br><span><a href="mailto:Mondrian@pentaho.org" target="_blank">Mondrian@pentaho.org</a></span><br>

<span><a href="http://lists.pentaho.org/mailman/listinfo/mondrian" target="_blank">http://lists.pentaho.org/mailman/listinfo/mondrian</a></span><br></div></blockquote></div></div></div><br>_______________________________________________<br>


Mondrian mailing list<br>
<a href="mailto:Mondrian@pentaho.org" target="_blank">Mondrian@pentaho.org</a><br>
<a href="http://lists.pentaho.org/mailman/listinfo/mondrian" target="_blank">http://lists.pentaho.org/mailman/listinfo/mondrian</a><br>
<br></blockquote></div><br></div></div></div>
</blockquote></div><br></div></div></div></div>