[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [Subclipse-dev] Revision graph and cache implementation

From: Mark Phippard <markphip_at_gmail.com>
Date: Thu, 31 Jul 2008 10:10:21 -0400

There is a bug, at least on OSX, in your code that determines where
you are creating the Derby database. On OSX, when you convert the
File to a URL you get a value like this:

file:/Users/markphip/filename

So your code converts that to this:

Users/markphip/filename

So this causes the database to stored relative to the current working directory.

Are you just using that code to convert Windows "\" to "/"?

Mark

On Thu, Jul 31, 2008 at 7:50 AM, Alberto Gimeno <gimenete_at_gmail.com> wrote:
> Hi.
>
> I have just commited my work of this week. I have rewritten most of
> the revision graph plugin.
>
> The new cache implementation makes the following steps:
> 1.- store all the log messages without processing them. I'm using batch updates.
> 2.- given a path and revision number it finds the first revision and
> path of that file (i.e. the root branch)
> 3.- from the root branch it iterates over the next revisions finding branches.
>
> The first step now is faster compared to the old implementation,
> because it doesn't makes any calculation and uses batch operations.
>
> The second and third steps are very fast because they don't write to
> the database. These steps just take about 8 seconds in a repository
> with 4.000 revisions in my computer.
>
> I have some things I want to think about.
>
> a) The third step builds a graph in memory. There is no problem with
> memory usage because only the required information to show the graph
> is in memory. I could serializate the graph once it has been
> calculated, for a future usage. If in a future the graph needs to be
> updated I can deserialize it and add the new nodes.
>
> b) With the last cache implementation I just make two reads to the
> dabase, and revisions and change_paths are just stored as they came
> from the repository. So, I'm thinking about storing that information
> in files instead in the database. Maybe a big text file. But I don't
> know how fast would be reading a text file with 100k lines. Would it
> be much slower than reading a table with 100k records? I'm thinking of
> that because the queries I need are very simple: "give me all
> information from x revision to y revision". The only problem is
> skipping all lines until the 'x' revision.
> I'll need a file with the information in ascending order and other in
> reverse order. Having these two files I could throw away the database.
>
> I'm going to keep working on fixing some minor things.
>
> On Mon, Jul 28, 2008 at 4:18 PM, Mark Phippard <markphip_at_gmail.com> wrote:
>> On Mon, Jul 28, 2008 at 10:10 AM, Alberto Gimeno <gimenete_at_gmail.com> wrote:
>>
>>> I just want to say that I am at Valencia (Spain), at the Campus Party
>>> 2008. Google invited me to this event. Here I'll talk about my
>>> experience at the Google Summer of Code. More info:
>>> http://gimenetegsoc.wordpress.com/2008/07/28/hello-from-the-campus-party-2008-valencia-spain/
>>>
>>> I'm going to spend this week working in the revision graph. I'm going
>>> to make some experiments with some of the ideas suggested by Stefan. I
>>> hope to have a better cache implementation at the end of this week.
>>
>> That is great to hear, have fun.
>>
>> --
>> Thanks
>>
>> Mark Phippard
>> http://markphip.blogspot.com/
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe_at_subclipse.tigris.org
>> For additional commands, e-mail: dev-help_at_subclipse.tigris.org
>>
>>
>
>
>
> --
> Alberto Gimeno Brieba
> Presidente y fundador de
> Ribe Software S.L.
> http://www.ribesoftware.com
> ribe_at_ribesoftware.com
>
> Contacto personal
> eMail: gimenete_at_gmail.com
> GTalk: gimenete_at_gmail.com
> msn: gimenete_at_hotmail.com
> página web: http://gimenete.net
> teléfono móvil: +34 625 24 64 81
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe_at_subclipse.tigris.org
> For additional commands, e-mail: dev-help_at_subclipse.tigris.org
>
>

-- 
Thanks
Mark Phippard
http://markphip.blogspot.com/
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe_at_subclipse.tigris.org
For additional commands, e-mail: dev-help_at_subclipse.tigris.org
Received on 2008-07-31 16:10:28 CEST

This is an archived mail posted to the Subclipse Dev mailing list.