OutOfMemoryError

10 messages Options
Embed this post
Permalink
hugosson

OutOfMemoryError

Reply Threaded More More options
Print post
Permalink
Hello,

When running 'java -jar statsvn.jar c:\myproject\svn.log c:\myproject' I get the following error:

---------------------------------------------------------------------------------------------------------
-bash-3.2$ $JAVA -Xss128k -Xms128M -Xmx512M -jar $STATSVN -notes $NOTESFILE $CO/$shortname.log $CO/$shortname
Feb 16, 2009 5:24:16 PM net.sf.statsvn.util.JavaUtilTaskLogger info
INFO: StatSVN - SVN statistics generation

Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
OutOfMemoryError.
Try running java with the -mx option (e.g. -mx128m for 128Mb).
-bash-3.2$
--------------------------------------------------------------------------------------------------------------------------------
As you can see I have already started to play with the Java parameters:
Xss128k -Xms128M -Xmx512M but this does not seem to have any impact, at around 1.5 Gb used virtual memory the process is being killed.

How can I force the process to only use a certain amount of resources (memory)?????
I use jdk1.6.0_06/bin/java

I run this on a fairly big project with 20 000 revisions and 365894 Kb repository (434760Kb working copy), on other smaller projects it works fine.

Thanks for any help. / hugo
Jason Kealey-2

Re: OutOfMemoryError

Reply Threaded More More options
Print post
Permalink
If you give it a lower XMX like 64M, does it it crash sooner than if you give it 2048M ?

It is odd that you are requiring so much memory (which may indicate a leak in our code), but the option should work (I have used it in the past). 

What operating system are you using? (Are you running under Cygwin on Windows?)

Jason

On Wed, Feb 18, 2009 at 9:48 AM, hugosson <[hidden email]> wrote:

Hello,

When running 'java -jar statsvn.jar c:\myproject\svn.log c:\myproject' I get
the following error:

---------------------------------------------------------------------------------------------------------
-bash-3.2$ $JAVA -Xss128k -Xms128M -Xmx512M -jar $STATSVN -notes $NOTESFILE
$CO/$shortname.log $CO/$shortname
Feb 16, 2009 5:24:16 PM net.sf.statsvn.util.JavaUtilTaskLogger info
INFO: StatSVN - SVN statistics generation

Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
OutOfMemoryError.
Try running java with the -mx option (e.g. -mx128m for 128Mb).
-bash-3.2$
--------------------------------------------------------------------------------------------------------------------------------
As you can see I have already started to play with the Java parameters:
Xss128k -Xms128M -Xmx512M but this does not seem to have any impact, at
around 1.5 Gb used virtual memory the process is being killed.

How can I force the process to only use a certain amount of resources
(memory)?????
I use jdk1.6.0_06/bin/java

I run this on a fairly big project with 20 000 revisions and 365894 Kb
repository (434760Kb working copy), on other smaller projects it works fine.

Thanks for any help. / hugo
--
View this message in context: http://n2.nabble.com/OutOfMemoryError-tp2347211p2347211.html
Sent from the StatSVN Users mailing list archive at Nabble.com.


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Statsvn-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/statsvn-users




--
Jason Kealey - [hidden email]
LavaBlast Franchise Software - http://www.lavablast.com
Simplifying day-to-day franchise operations

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Statsvn-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/statsvn-users
Jason Kealey-2

Re: OutOfMemoryError

Reply Threaded More More options
Print post
Permalink
JP will try to do some profiling tonight (if he has the time) on a large repo to see if he can find this same memory leak.

Thanks,
Jason

On Wed, Feb 18, 2009 at 11:23 AM, Jonatan Hugosson <[hidden email]> wrote:
Hello,

I am running this on Linux ~ redhat 5, here are the times if using 64M or 2048M

****************** 64M **************
-bash-3.2$ time $JAVA -Xmx64M -jar $STATSVN -notes $NOTESFILE
$CO/$shortname.log $CO/$shortname
Feb 18, 2009 4:38:46 PM net.sf.statsvn.util.JavaUtilTaskLogger info
INFO: StatSVN - SVN statistics generation

Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
OutOfMemoryError.
Try running java with the -mx option (e.g. -mx128m for 128Mb).

real    2m19.548s
user    0m26.912s
sys     0m17.913s
-bash-3.2$

************** 2048 M *****************
 time $JAVA -Xmx2048M -jar $STATSVN -notes $NOTESFILE
$CO/$shortname.log $CO/$shortname
Error occurred during initialization of VM
Could not reserve enough space for object heap
*** glibc detected ***
/afs/cern.ch/project/svn/java/inst/jdk1.6.0_06/bin/java: free():
invalid pointer: 0x00000000407acf90 ***
======= Backtrace: =========
...
Aborted

real    0m0.052s
user    0m0.005s
sys     0m0.007s
-bash-3.2$

so, indeed it seems to work, the options are not ignored... does this
mean there is a memory leak then or why does it exceed the limit??

Cheers hugo

2009/2/18 Jason Kealey <[hidden email]>:
> If you give it a lower XMX like 64M, does it it crash sooner than if you
> give it 2048M ?
> It is odd that you are requiring so much memory (which may indicate a leak
> in our code), but the option should work (I have used it in the past).
> What operating system are you using? (Are you running under Cygwin on
> Windows?)
> Jason
>
> On Wed, Feb 18, 2009 at 9:48 AM, hugosson <[hidden email]> wrote:
>>
>> Hello,
>>
>> When running 'java -jar statsvn.jar c:\myproject\svn.log c:\myproject' I
>> get
>> the following error:
>>
>>
>> ---------------------------------------------------------------------------------------------------------
>> -bash-3.2$ $JAVA -Xss128k -Xms128M -Xmx512M -jar $STATSVN -notes
>> $NOTESFILE
>> $CO/$shortname.log $CO/$shortname
>> Feb 16, 2009 5:24:16 PM net.sf.statsvn.util.JavaUtilTaskLogger info
>> INFO: StatSVN - SVN statistics generation
>>
>> Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
>> OutOfMemoryError.
>> Try running java with the -mx option (e.g. -mx128m for 128Mb).
>> -bash-3.2$
>>
>> --------------------------------------------------------------------------------------------------------------------------------
>> As you can see I have already started to play with the Java parameters:
>> Xss128k -Xms128M -Xmx512M but this does not seem to have any impact, at
>> around 1.5 Gb used virtual memory the process is being killed.
>>
>> How can I force the process to only use a certain amount of resources
>> (memory)?????
>> I use jdk1.6.0_06/bin/java
>>
>> I run this on a fairly big project with 20 000 revisions and 365894 Kb
>> repository (434760Kb working copy), on other smaller projects it works
>> fine.
>>
>> Thanks for any help. / hugo
>> --
>> View this message in context:
>> http://n2.nabble.com/OutOfMemoryError-tp2347211p2347211.html
>> Sent from the StatSVN Users mailing list archive at Nabble.com.
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco,
>> CA
>> -OSBC tackles the biggest issue in open source: Open Sourcing the
>> Enterprise
>> -Strategies to boost innovation and cut costs with open source
>> participation
>> -Receive a $600 discount off the registration fee with the source code:
>> SFAD
>> http://p.sf.net/sfu/XcvMzF8H
>> _______________________________________________
>> Statsvn-users mailing list
>> [hidden email]
>> https://lists.sourceforge.net/lists/listinfo/statsvn-users
>>
>
>
>
> --
> Jason Kealey - [hidden email]
> LavaBlast Franchise Software - http://www.lavablast.com
> Simplifying day-to-day franchise operations
>



--
Jason Kealey - [hidden email]
LavaBlast Franchise Software - http://www.lavablast.com
Simplifying day-to-day franchise operations

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Statsvn-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/statsvn-users
Jean-Philippe Daigle

Re: OutOfMemoryError

Reply Threaded More More options
Print post
Permalink
All right, I've run a large-ish repo at work (12000 revisions, XML
logfile is 12MB, working copy is around 750MB). The project is a bit
smaller than Mr Hugosson's, but still large enough to see an impact in
JProfiler.

I don't see any obvious egregious leaks. Most of the memory is taken
by Strings and char[]s, as statsvn builds an in-memory structure with
every comment and file path in the logfile. This is why it takes quite
a bit of memory, but it's still not too bad on my test system.

For my project, while parsing XML, my heap usage rapidly went up to
30MB and stayed there. Then while examining the DOM heap usage went up
to 50MB.  Unless your average comment length is WAAAY bigger than
mine, it doesn't seem like you should be overflowing a half-gig or
whatever the max size you set is.

I thought for a second there that RevisionData instances (my project
creates 86000 of them on the heap) were the problem because they save
the comment string, but different RevisionData instances for the same
revision share the comment string by reference, so it's not taking any
extra memory.

Next step: Jonathan, I'd like a bit more info:

1) about *where* it's failing with an OutOfMemory exception. If you
run with the "-debug" option, you'll get a lot more output (save it to
a file, it's going to be huge). I'm wondering if the failure really
happens during log parsing or later on.

2) about the input file: how big is it? Mine was ~12MB.

3) about how fast the heap grows: if you've got java6 and it's not a
headless box, start "jvisualvm" and double-click on
"net.sf.statsvn.Main", go to the Monitor tab, and see the evolution
for the 2 minutes until it crashes. Any gut feelings you have looking
at the chart might be useful.




On Wed, Feb 18, 2009 at 11:57 AM, Jason Kealey <[hidden email]> wrote:

> JP will try to do some profiling tonight (if he has the time) on a large
> repo to see if he can find this same memory leak.
> Thanks,
> Jason
>
> On Wed, Feb 18, 2009 at 11:23 AM, Jonatan Hugosson <[hidden email]>
> wrote:
>>
>> Hello,
>>
>> I am running this on Linux ~ redhat 5, here are the times if using 64M or
>> 2048M
>>
>> ****************** 64M **************
>> -bash-3.2$ time $JAVA -Xmx64M -jar $STATSVN -notes $NOTESFILE
>> $CO/$shortname.log $CO/$shortname
>> Feb 18, 2009 4:38:46 PM net.sf.statsvn.util.JavaUtilTaskLogger info
>> INFO: StatSVN - SVN statistics generation
>>
>> Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
>> OutOfMemoryError.
>> Try running java with the -mx option (e.g. -mx128m for 128Mb).
>>
>> real    2m19.548s
>> user    0m26.912s
>> sys     0m17.913s
>> -bash-3.2$
>>
>> ************** 2048 M *****************
>>  time $JAVA -Xmx2048M -jar $STATSVN -notes $NOTESFILE
>> $CO/$shortname.log $CO/$shortname
>> Error occurred during initialization of VM
>> Could not reserve enough space for object heap
>> *** glibc detected ***
>> /afs/cern.ch/project/svn/java/inst/jdk1.6.0_06/bin/java: free():
>> invalid pointer: 0x00000000407acf90 ***
>> ======= Backtrace: =========
>> ...
>> Aborted
>>
>> real    0m0.052s
>> user    0m0.005s
>> sys     0m0.007s
>> -bash-3.2$
>>
>> so, indeed it seems to work, the options are not ignored... does this
>> mean there is a memory leak then or why does it exceed the limit??
>>
>> Cheers hugo
>>
>> 2009/2/18 Jason Kealey <[hidden email]>:
>> > If you give it a lower XMX like 64M, does it it crash sooner than if you
>> > give it 2048M ?
>> > It is odd that you are requiring so much memory (which may indicate a
>> > leak
>> > in our code), but the option should work (I have used it in the past).
>> > What operating system are you using? (Are you running under Cygwin on
>> > Windows?)
>> > Jason
>> >
>> > On Wed, Feb 18, 2009 at 9:48 AM, hugosson <[hidden email]> wrote:
>> >>
>> >> Hello,
>> >>
>> >> When running 'java -jar statsvn.jar c:\myproject\svn.log c:\myproject'
>> >> I
>> >> get
>> >> the following error:
>> >>
>> >>
>> >>
>> >> ---------------------------------------------------------------------------------------------------------
>> >> -bash-3.2$ $JAVA -Xss128k -Xms128M -Xmx512M -jar $STATSVN -notes
>> >> $NOTESFILE
>> >> $CO/$shortname.log $CO/$shortname
>> >> Feb 16, 2009 5:24:16 PM net.sf.statsvn.util.JavaUtilTaskLogger info
>> >> INFO: StatSVN - SVN statistics generation
>> >>
>> >> Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
>> >> OutOfMemoryError.
>> >> Try running java with the -mx option (e.g. -mx128m for 128Mb).
>> >> -bash-3.2$
>> >>
>> >>
>> >> --------------------------------------------------------------------------------------------------------------------------------
>> >> As you can see I have already started to play with the Java parameters:
>> >> Xss128k -Xms128M -Xmx512M but this does not seem to have any impact, at
>> >> around 1.5 Gb used virtual memory the process is being killed.
>> >>
>> >> How can I force the process to only use a certain amount of resources
>> >> (memory)?????
>> >> I use jdk1.6.0_06/bin/java
>> >>
>> >> I run this on a fairly big project with 20 000 revisions and 365894 Kb
>> >> repository (434760Kb working copy), on other smaller projects it works
>> >> fine.
>> >>
>> >> Thanks for any help. / hugo
>> >> --
>> >> View this message in context:
>> >> http://n2.nabble.com/OutOfMemoryError-tp2347211p2347211.html
>> >> Sent from the StatSVN Users mailing list archive at Nabble.com.
>> >>
>> >>
>> >>
>> >>
>> >> ------------------------------------------------------------------------------
>> >> Open Source Business Conference (OSBC), March 24-25, 2009, San
>> >> Francisco,
>> >> CA
>> >> -OSBC tackles the biggest issue in open source: Open Sourcing the
>> >> Enterprise
>> >> -Strategies to boost innovation and cut costs with open source
>> >> participation
>> >> -Receive a $600 discount off the registration fee with the source code:
>> >> SFAD
>> >> http://p.sf.net/sfu/XcvMzF8H
>> >> _______________________________________________
>> >> Statsvn-users mailing list
>> >> [hidden email]
>> >> https://lists.sourceforge.net/lists/listinfo/statsvn-users
>> >>
>> >
>> >
>> >
>> > --
>> > Jason Kealey - [hidden email]
>> > LavaBlast Franchise Software - http://www.lavablast.com
>> > Simplifying day-to-day franchise operations
>> >
>
>
>
> --
> Jason Kealey - [hidden email]
> LavaBlast Franchise Software - http://www.lavablast.com
> Simplifying day-to-day franchise operations
>
> ------------------------------------------------------------------------------
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open source participation
> -Receive a $600 discount off the registration fee with the source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> _______________________________________________
> Statsvn-users mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/statsvn-users
>
>

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Statsvn-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/statsvn-users
Jean-Philippe Daigle

Re: OutOfMemoryError

Reply Threaded More More options
Print post
Permalink
Hi!

On Thu, Feb 19, 2009 at 3:57 AM, Jonatan Hugosson <[hidden email]> wrote:

>> 1) about *where* it's failing with an OutOfMemory exception. If you
>> run with the "-debug" option, you'll get a lot more output (save it to
>> a file, it's going to be huge). I'm wondering if the failure really
>> happens during log parsing or later on.
> see attachement
>
>>
>> 2) about the input file: how big is it? Mine was ~12MB.
>
>
> -bash-3.2$ du -ksx $CO/$shortname.log
> 12800   /svnstats/co/CASTOR.log
>


Wow, the log shows it took 19 MINUTES just to parse the XML logfile?
That's very weird, as it's only 12MB. I feed it the same size logfile
and it takes just 20 seconds. I don't know exactly what's wrong with
your run.

One thing I do notice from the log is that StatSVN is being run on all
branches and tags. This is probably a bad idea. Try making a separate
run / output directory for each branch you care about, but log only
that branch individually. What you're doing here requires you to have
every single branch and tag checked out, which means your workspace
will be absolutely huge and yes, the run will be pretty slow.

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Statsvn-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/statsvn-users
Jason Kealey-2

Re: OutOfMemoryError

Reply Threaded More More options
Print post
Permalink
Jonatan,

I think the XML Parser you have installed on your machine is probably not the default parser. Some parsers throw null-pointer exceptions and yours appears to have a memory leak and bad performance. 

Jason

On Thu, Feb 19, 2009 at 10:13 AM, Jean-Philippe Daigle <[hidden email]> wrote:
Hi!

On Thu, Feb 19, 2009 at 3:57 AM, Jonatan Hugosson <[hidden email]> wrote:
>> 1) about *where* it's failing with an OutOfMemory exception. If you
>> run with the "-debug" option, you'll get a lot more output (save it to
>> a file, it's going to be huge). I'm wondering if the failure really
>> happens during log parsing or later on.
> see attachement
>
>>
>> 2) about the input file: how big is it? Mine was ~12MB.
>
>
> -bash-3.2$ du -ksx $CO/$shortname.log
> 12800   /svnstats/co/CASTOR.log
>


Wow, the log shows it took 19 MINUTES just to parse the XML logfile?
That's very weird, as it's only 12MB. I feed it the same size logfile
and it takes just 20 seconds. I don't know exactly what's wrong with
your run.

One thing I do notice from the log is that StatSVN is being run on all
branches and tags. This is probably a bad idea. Try making a separate
run / output directory for each branch you care about, but log only
that branch individually. What you're doing here requires you to have
every single branch and tag checked out, which means your workspace
will be absolutely huge and yes, the run will be pretty slow.

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Statsvn-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/statsvn-users




--
Jason Kealey - [hidden email]
LavaBlast Franchise Software - http://www.lavablast.com
Simplifying day-to-day franchise operations

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Statsvn-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/statsvn-users
Jason Kealey-2

Re: OutOfMemoryError

Reply Threaded More More options
Print post
Permalink
You can change the parser by using a system property which is called
"javax.xml.parsers.SAXParserFactory".

This page has more information on how to check which one you have now:
http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/parsers/SAXParserFactory.html

You run java with the -D option to set properties... example:
-Djavax.xml.parsers.SAXParserFactory=(name of the good one)

I have no idea what the default value is supposed to be, and everytime
I check I lose 15min on Google trying to figure it out before I quit
:) Let the mailing list know if you find a setting that works for you!

Jason

On Thu, Feb 19, 2009 at 11:33 AM, Jonatan Hugosson <[hidden email]> wrote:

>
> Hello,
>
> Sorry, I am sure it is documented somewhere, but which is the default
> xml parser??
>
> Thanks, hugo
>
> 2009/2/19 Jason Kealey <[hidden email]>:
> > Jonatan,
> > I think the XML Parser you have installed on your machine is probably not
> > the default parser. Some parsers throw null-pointer exceptions and yours
> > appears to have a memory leak and bad performance.
> > Jason
> >
> > On Thu, Feb 19, 2009 at 10:13 AM, Jean-Philippe Daigle <[hidden email]>
> > wrote:
> >>
> >> Hi!
> >>
> >> On Thu, Feb 19, 2009 at 3:57 AM, Jonatan Hugosson <[hidden email]>
> >> wrote:
> >> >> 1) about *where* it's failing with an OutOfMemory exception. If you
> >> >> run with the "-debug" option, you'll get a lot more output (save it to
> >> >> a file, it's going to be huge). I'm wondering if the failure really
> >> >> happens during log parsing or later on.
> >> > see attachement
> >> >
> >> >>
> >> >> 2) about the input file: how big is it? Mine was ~12MB.
> >> >
> >> >
> >> > -bash-3.2$ du -ksx $CO/$shortname.log
> >> > 12800   /svnstats/co/CASTOR.log
> >> >
> >>
> >>
> >> Wow, the log shows it took 19 MINUTES just to parse the XML logfile?
> >> That's very weird, as it's only 12MB. I feed it the same size logfile
> >> and it takes just 20 seconds. I don't know exactly what's wrong with
> >> your run.
> >>
> >> One thing I do notice from the log is that StatSVN is being run on all
> >> branches and tags. This is probably a bad idea. Try making a separate
> >> run / output directory for each branch you care about, but log only
> >> that branch individually. What you're doing here requires you to have
> >> every single branch and tag checked out, which means your workspace
> >> will be absolutely huge and yes, the run will be pretty slow.
> >>
> >>
> >> ------------------------------------------------------------------------------
> >> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco,
> >> CA
> >> -OSBC tackles the biggest issue in open source: Open Sourcing the
> >> Enterprise
> >> -Strategies to boost innovation and cut costs with open source
> >> participation
> >> -Receive a $600 discount off the registration fee with the source code:
> >> SFAD
> >> http://p.sf.net/sfu/XcvMzF8H
> >> _______________________________________________
> >> Statsvn-users mailing list
> >> [hidden email]
> >> https://lists.sourceforge.net/lists/listinfo/statsvn-users
> >>
> >
> >
> >
> > --
> > Jason Kealey - [hidden email]
> > LavaBlast Franchise Software - http://www.lavablast.com
> > Simplifying day-to-day franchise operations
> >



--
Jason Kealey - [hidden email]
LavaBlast Franchise Software - http://www.lavablast.com
Simplifying day-to-day franchise operations

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Statsvn-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/statsvn-users
Jason Kealey-2

Re: OutOfMemoryError

Reply Threaded More More options
Print post
Permalink
Interesting. I am using the same parser as you are, without problems,
it appears. I don't have enough experience to be able to help you with
this in greater detail.  Could there be a bug on your OS with this
parser? Can you try it on other operating systems, just for fun?

Jason

On Fri, Feb 20, 2009 at 5:32 AM, Jonatan Hugosson <[hidden email]> wrote:

> Hello,
>
> Obviosly I am using xerces as java parser
>
> -bash-3.2$ $JAVA -Djaxp.debug=1 -jar $STATSVN -notes $NOTESFILE
> $CO/$shortname.log $CO/$shortname > log2.txtFeb 20, 2009 11:00:03 AM
> net.sf.statsvn.util.JavaUtilTaskLogger info
> INFO: StatSVN - SVN statistics generation
>
> Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
> JAXP: find factoryId =javax.xml.parsers.SAXParserFactory
> JAXP: loaded from fallback value:
> com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl
> JAXP: created new instance of class
> com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl using
> ClassLoader: null
> JAXP: find factoryId =javax.xml.parsers.SAXParserFactory
> JAXP: loaded from fallback value:
> com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl
> JAXP: created new instance of class
> com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl using
> ClassLoader: null
> JAXP: find factoryId =javax.xml.parsers.DocumentBuilderFactory
> JAXP: loaded from fallback value:
> com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
> JAXP: created new instance of class
> com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
> using ClassLoader: null
> JAXP: find factoryId =javax.xml.transform.TransformerFactory
> JAXP: loaded from fallback value:
> com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl
> JAXP: created new instance of class
> com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl
> using ClassLoader: null
> JAXP: find factoryId =javax.xml.parsers.DocumentBuilderFactory
> JAXP: loaded from fallback value:
> com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
> JAXP: created new instance of class
> com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
> using ClassLoader: null
> OutOfMemoryError.
> Try running java with the -mx option (e.g. -mx128m for 128Mb).
>
> Any one who knws they are using another one or that xerces is bad??
>
> Furthermore I am unable to use the option
> -Djavax.xml.parsers.SAXParserFactory= ::
>
> $JAVA -Djavax.xml.parsers.SAXParserFactory=org.apache.xerces.jaxp
> -Djaxp.debug=1 -jar $STATSVN -notes $NOTESFILE $CO/$shortname.log
> $CO/$shortname > log2.txt
> Feb 20, 2009 11:23:27 AM net.sf.statsvn.util.JavaUtilTaskLogger info
> INFO: StatSVN - SVN statistics generation
>
> Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
> JAXP: find factoryId =javax.xml.parsers.SAXParserFactory
> JAXP: found system property, value=org.apache.xerces.jaxp
> Exception in thread "main"
> javax.xml.parsers.FactoryConfigurationError: Provider
> org.apache.xerces.jaxp not found
>        at javax.xml.parsers.SAXParserFactory.newInstance(SAXParserFactory.java:134)
>        at net.sf.statsvn.input.SvnLogfileParser.parseSvnLog(SvnLogfileParser.java:603)
>        at net.sf.statsvn.input.SvnLogfileParser.parse(SvnLogfileParser.java:337)
>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:279)
>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:241)
>        at net.sf.statsvn.Main.generate(Main.java:115)
>        at net.sf.statsvn.Main.main(Main.java:81)
>
> OR:
>
> -bash-3.2$ $JAVA
> -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp
> -Djaxp.debug=1 -jar $STATSVN -notes $NOTESFILE $CO/$shortname.log
> $CO/$shortname > log2.txt
> Feb 20, 2009 11:29:18 AM net.sf.statsvn.util.JavaUtilTaskLogger info
> INFO: StatSVN - SVN statistics generation
>
> Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
> JAXP: find factoryId =javax.xml.parsers.SAXParserFactory
> JAXP: found system property, value=com.sun.org.apache.xerces.internal.jaxp
> Exception in thread "main"
> javax.xml.parsers.FactoryConfigurationError: Provider
> com.sun.org.apache.xerces.internal.jaxp not found
>        at javax.xml.parsers.SAXParserFactory.newInstance(SAXParserFactory.java:134)
>        at net.sf.statsvn.input.SvnLogfileParser.parseSvnLog(SvnLogfileParser.java:603)
>        at net.sf.statsvn.input.SvnLogfileParser.parse(SvnLogfileParser.java:337)
>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:279)
>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:241)
>        at net.sf.statsvn.Main.generate(Main.java:115)
>        at net.sf.statsvn.Main.main(Main.java:81)
> -bash-3.2$
>
> OR:
>
> $JAVA -Djavax.xml.parsers.SAXParserFactory=oracle.xml.jaxp.JXSAXParser
> -Djaxp.debug=1 -jar $STATSVN -notes $NOTESFILE $CO/$shortname.log
> $CO/$shortname > log2.txt
> Feb 20, 2009 11:21:38 AM net.sf.statsvn.util.JavaUtilTaskLogger info
> INFO: StatSVN - SVN statistics generation
>
> Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
> JAXP: find factoryId =javax.xml.parsers.SAXParserFactory
> JAXP: found system property, value=oracle.xml.jaxp.JXSAXParser
> Exception in thread "main"
> javax.xml.parsers.FactoryConfigurationError: Provider
> oracle.xml.jaxp.JXSAXParser not found
>        at javax.xml.parsers.SAXParserFactory.newInstance(SAXParserFactory.java:134)
>        at net.sf.statsvn.input.SvnLogfileParser.parseSvnLog(SvnLogfileParser.java:603)
>        at net.sf.statsvn.input.SvnLogfileParser.parse(SvnLogfileParser.java:337)
>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:279)
>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:241)
>        at net.sf.statsvn.Main.generate(Main.java:115)
>        at net.sf.statsvn.Main.main(Main.java:81)
> -bash-3.2$
>
> How am I supposed to load it properly??
>
> Cheers hugo
>
> 2009/2/19 Jason Kealey <[hidden email]>:
>> You can change the parser by using a system property which is called
>> "javax.xml.parsers.SAXParserFactory".
>>
>> This page has more information on how to check which one you have now:
>> http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/parsers/SAXParserFactory.html
>>
>> You run java with the -D option to set properties... example:
>> -Djavax.xml.parsers.SAXParserFactory=(name of the good one)
>>
>> I have no idea what the default value is supposed to be, and everytime
>> I check I lose 15min on Google trying to figure it out before I quit
>> :) Let the mailing list know if you find a setting that works for you!
>>
>> Jason
>>
>> On Thu, Feb 19, 2009 at 11:33 AM, Jonatan Hugosson <[hidden email]> wrote:
>>>
>>> Hello,
>>>
>>> Sorry, I am sure it is documented somewhere, but which is the default
>>> xml parser??
>>>
>>> Thanks, hugo
>>>
>>> 2009/2/19 Jason Kealey <[hidden email]>:
>>> > Jonatan,
>>> > I think the XML Parser you have installed on your machine is probably not
>>> > the default parser. Some parsers throw null-pointer exceptions and yours
>>> > appears to have a memory leak and bad performance.
>>> > Jason
>>> >
>>> > On Thu, Feb 19, 2009 at 10:13 AM, Jean-Philippe Daigle <[hidden email]>
>>> > wrote:
>>> >>
>>> >> Hi!
>>> >>
>>> >> On Thu, Feb 19, 2009 at 3:57 AM, Jonatan Hugosson <[hidden email]>
>>> >> wrote:
>>> >> >> 1) about *where* it's failing with an OutOfMemory exception. If you
>>> >> >> run with the "-debug" option, you'll get a lot more output (save it to
>>> >> >> a file, it's going to be huge). I'm wondering if the failure really
>>> >> >> happens during log parsing or later on.
>>> >> > see attachement
>>> >> >
>>> >> >>
>>> >> >> 2) about the input file: how big is it? Mine was ~12MB.
>>> >> >
>>> >> >
>>> >> > -bash-3.2$ du -ksx $CO/$shortname.log
>>> >> > 12800   /svnstats/co/CASTOR.log
>>> >> >
>>> >>
>>> >>
>>> >> Wow, the log shows it took 19 MINUTES just to parse the XML logfile?
>>> >> That's very weird, as it's only 12MB. I feed it the same size logfile
>>> >> and it takes just 20 seconds. I don't know exactly what's wrong with
>>> >> your run.
>>> >>
>>> >> One thing I do notice from the log is that StatSVN is being run on all
>>> >> branches and tags. This is probably a bad idea. Try making a separate
>>> >> run / output directory for each branch you care about, but log only
>>> >> that branch individually. What you're doing here requires you to have
>>> >> every single branch and tag checked out, which means your workspace
>>> >> will be absolutely huge and yes, the run will be pretty slow.
>>> >>
>>> >>
>>> >> ------------------------------------------------------------------------------
>>> >> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco,
>>> >> CA
>>> >> -OSBC tackles the biggest issue in open source: Open Sourcing the
>>> >> Enterprise
>>> >> -Strategies to boost innovation and cut costs with open source
>>> >> participation
>>> >> -Receive a $600 discount off the registration fee with the source code:
>>> >> SFAD
>>> >> http://p.sf.net/sfu/XcvMzF8H
>>> >> _______________________________________________
>>> >> Statsvn-users mailing list
>>> >> [hidden email]
>>> >> https://lists.sourceforge.net/lists/listinfo/statsvn-users
>>> >>
>>> >
>>> >
>>> >
>>> > --
>>> > Jason Kealey - [hidden email]
>>> > LavaBlast Franchise Software - http://www.lavablast.com
>>> > Simplifying day-to-day franchise operations
>>> >
>>
>>
>>
>> --
>> Jason Kealey - [hidden email]
>> LavaBlast Franchise Software - http://www.lavablast.com
>> Simplifying day-to-day franchise operations
>>
>



--
Jason Kealey - [hidden email]
LavaBlast Franchise Software - http://www.lavablast.com
Simplifying day-to-day franchise operations

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Statsvn-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/statsvn-users
Jason Kealey-2

Re: OutOfMemoryError

Reply Threaded More More options
Print post
Permalink
Makes sense! Happy to see we could help!
Jason

On Tue, Feb 24, 2009 at 3:19 AM, Jonatan Hugosson <[hidden email]> wrote:
Hello,

So I tried on Ubunto using java version "1.6.0_10"
Java(TM) SE Runtime Environment (build 1.6.0_10-b33)
Java HotSpot(TM) Server VM (build 11.0-b15, mixed mode)

And it use alot less memory:

writing page 'Development Statistics for  ' to index.html
runtime: 30282.747 seconds
memory usage: 459648.0 kb
[hugosson@pcitdesson CASTOR] $

Compared to:

runtime: 38200.068 seconds
memory usage: 1225664.0 kb

i.e. less than half of the momory usage. So must be something with my
java/OS, no??

Cheers hugo

2009/2/20 Jason Kealey <[hidden email]>:
> Interesting. I am using the same parser as you are, without problems,
> it appears. I don't have enough experience to be able to help you with
> this in greater detail.  Could there be a bug on your OS with this
> parser? Can you try it on other operating systems, just for fun?
>
> Jason
>
> On Fri, Feb 20, 2009 at 5:32 AM, Jonatan Hugosson <[hidden email]> wrote:
>> Hello,
>>
>> Obviosly I am using xerces as java parser
>>
>> -bash-3.2$ $JAVA -Djaxp.debug=1 -jar $STATSVN -notes $NOTESFILE
>> $CO/$shortname.log $CO/$shortname > log2.txtFeb 20, 2009 11:00:03 AM
>> net.sf.statsvn.util.JavaUtilTaskLogger info
>> INFO: StatSVN - SVN statistics generation
>>
>> Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
>> JAXP: find factoryId =javax.xml.parsers.SAXParserFactory
>> JAXP: loaded from fallback value:
>> com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl
>> JAXP: created new instance of class
>> com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl using
>> ClassLoader: null
>> JAXP: find factoryId =javax.xml.parsers.SAXParserFactory
>> JAXP: loaded from fallback value:
>> com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl
>> JAXP: created new instance of class
>> com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl using
>> ClassLoader: null
>> JAXP: find factoryId =javax.xml.parsers.DocumentBuilderFactory
>> JAXP: loaded from fallback value:
>> com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
>> JAXP: created new instance of class
>> com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
>> using ClassLoader: null
>> JAXP: find factoryId =javax.xml.transform.TransformerFactory
>> JAXP: loaded from fallback value:
>> com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl
>> JAXP: created new instance of class
>> com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl
>> using ClassLoader: null
>> JAXP: find factoryId =javax.xml.parsers.DocumentBuilderFactory
>> JAXP: loaded from fallback value:
>> com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
>> JAXP: created new instance of class
>> com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
>> using ClassLoader: null
>> OutOfMemoryError.
>> Try running java with the -mx option (e.g. -mx128m for 128Mb).
>>
>> Any one who knws they are using another one or that xerces is bad??
>>
>> Furthermore I am unable to use the option
>> -Djavax.xml.parsers.SAXParserFactory= ::
>>
>> $JAVA -Djavax.xml.parsers.SAXParserFactory=org.apache.xerces.jaxp
>> -Djaxp.debug=1 -jar $STATSVN -notes $NOTESFILE $CO/$shortname.log
>> $CO/$shortname > log2.txt
>> Feb 20, 2009 11:23:27 AM net.sf.statsvn.util.JavaUtilTaskLogger info
>> INFO: StatSVN - SVN statistics generation
>>
>> Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
>> JAXP: find factoryId =javax.xml.parsers.SAXParserFactory
>> JAXP: found system property, value=org.apache.xerces.jaxp
>> Exception in thread "main"
>> javax.xml.parsers.FactoryConfigurationError: Provider
>> org.apache.xerces.jaxp not found
>>        at javax.xml.parsers.SAXParserFactory.newInstance(SAXParserFactory.java:134)
>>        at net.sf.statsvn.input.SvnLogfileParser.parseSvnLog(SvnLogfileParser.java:603)
>>        at net.sf.statsvn.input.SvnLogfileParser.parse(SvnLogfileParser.java:337)
>>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:279)
>>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:241)
>>        at net.sf.statsvn.Main.generate(Main.java:115)
>>        at net.sf.statsvn.Main.main(Main.java:81)
>>
>> OR:
>>
>> -bash-3.2$ $JAVA
>> -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp
>> -Djaxp.debug=1 -jar $STATSVN -notes $NOTESFILE $CO/$shortname.log
>> $CO/$shortname > log2.txt
>> Feb 20, 2009 11:29:18 AM net.sf.statsvn.util.JavaUtilTaskLogger info
>> INFO: StatSVN - SVN statistics generation
>>
>> Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
>> JAXP: find factoryId =javax.xml.parsers.SAXParserFactory
>> JAXP: found system property, value=com.sun.org.apache.xerces.internal.jaxp
>> Exception in thread "main"
>> javax.xml.parsers.FactoryConfigurationError: Provider
>> com.sun.org.apache.xerces.internal.jaxp not found
>>        at javax.xml.parsers.SAXParserFactory.newInstance(SAXParserFactory.java:134)
>>        at net.sf.statsvn.input.SvnLogfileParser.parseSvnLog(SvnLogfileParser.java:603)
>>        at net.sf.statsvn.input.SvnLogfileParser.parse(SvnLogfileParser.java:337)
>>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:279)
>>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:241)
>>        at net.sf.statsvn.Main.generate(Main.java:115)
>>        at net.sf.statsvn.Main.main(Main.java:81)
>> -bash-3.2$
>>
>> OR:
>>
>> $JAVA -Djavax.xml.parsers.SAXParserFactory=oracle.xml.jaxp.JXSAXParser
>> -Djaxp.debug=1 -jar $STATSVN -notes $NOTESFILE $CO/$shortname.log
>> $CO/$shortname > log2.txt
>> Feb 20, 2009 11:21:38 AM net.sf.statsvn.util.JavaUtilTaskLogger info
>> INFO: StatSVN - SVN statistics generation
>>
>> Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
>> JAXP: find factoryId =javax.xml.parsers.SAXParserFactory
>> JAXP: found system property, value=oracle.xml.jaxp.JXSAXParser
>> Exception in thread "main"
>> javax.xml.parsers.FactoryConfigurationError: Provider
>> oracle.xml.jaxp.JXSAXParser not found
>>        at javax.xml.parsers.SAXParserFactory.newInstance(SAXParserFactory.java:134)
>>        at net.sf.statsvn.input.SvnLogfileParser.parseSvnLog(SvnLogfileParser.java:603)
>>        at net.sf.statsvn.input.SvnLogfileParser.parse(SvnLogfileParser.java:337)
>>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:279)
>>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:241)
>>        at net.sf.statsvn.Main.generate(Main.java:115)
>>        at net.sf.statsvn.Main.main(Main.java:81)
>> -bash-3.2$
>>
>> How am I supposed to load it properly??
>>
>> Cheers hugo
>>
>> 2009/2/19 Jason Kealey <[hidden email]>:
>>> You can change the parser by using a system property which is called
>>> "javax.xml.parsers.SAXParserFactory".
>>>
>>> This page has more information on how to check which one you have now:
>>> http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/parsers/SAXParserFactory.html
>>>
>>> You run java with the -D option to set properties... example:
>>> -Djavax.xml.parsers.SAXParserFactory=(name of the good one)
>>>
>>> I have no idea what the default value is supposed to be, and everytime
>>> I check I lose 15min on Google trying to figure it out before I quit
>>> :) Let the mailing list know if you find a setting that works for you!
>>>
>>> Jason
>>>
>>> On Thu, Feb 19, 2009 at 11:33 AM, Jonatan Hugosson <[hidden email]> wrote:
>>>>
>>>> Hello,
>>>>
>>>> Sorry, I am sure it is documented somewhere, but which is the default
>>>> xml parser??
>>>>
>>>> Thanks, hugo
>>>>
>>>> 2009/2/19 Jason Kealey <[hidden email]>:
>>>> > Jonatan,
>>>> > I think the XML Parser you have installed on your machine is probably not
>>>> > the default parser. Some parsers throw null-pointer exceptions and yours
>>>> > appears to have a memory leak and bad performance.
>>>> > Jason
>>>> >
>>>> > On Thu, Feb 19, 2009 at 10:13 AM, Jean-Philippe Daigle <[hidden email]>
>>>> > wrote:
>>>> >>
>>>> >> Hi!
>>>> >>
>>>> >> On Thu, Feb 19, 2009 at 3:57 AM, Jonatan Hugosson <[hidden email]>
>>>> >> wrote:
>>>> >> >> 1) about *where* it's failing with an OutOfMemory exception. If you
>>>> >> >> run with the "-debug" option, you'll get a lot more output (save it to
>>>> >> >> a file, it's going to be huge). I'm wondering if the failure really
>>>> >> >> happens during log parsing or later on.
>>>> >> > see attachement
>>>> >> >
>>>> >> >>
>>>> >> >> 2) about the input file: how big is it? Mine was ~12MB.
>>>> >> >
>>>> >> >
>>>> >> > -bash-3.2$ du -ksx $CO/$shortname.log
>>>> >> > 12800   /svnstats/co/CASTOR.log
>>>> >> >
>>>> >>
>>>> >>
>>>> >> Wow, the log shows it took 19 MINUTES just to parse the XML logfile?
>>>> >> That's very weird, as it's only 12MB. I feed it the same size logfile
>>>> >> and it takes just 20 seconds. I don't know exactly what's wrong with
>>>> >> your run.
>>>> >>
>>>> >> One thing I do notice from the log is that StatSVN is being run on all
>>>> >> branches and tags. This is probably a bad idea. Try making a separate
>>>> >> run / output directory for each branch you care about, but log only
>>>> >> that branch individually. What you're doing here requires you to have
>>>> >> every single branch and tag checked out, which means your workspace
>>>> >> will be absolutely huge and yes, the run will be pretty slow.
>>>> >>
>>>> >>
>>>> >> ------------------------------------------------------------------------------
>>>> >> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco,
>>>> >> CA
>>>> >> -OSBC tackles the biggest issue in open source: Open Sourcing the
>>>> >> Enterprise
>>>> >> -Strategies to boost innovation and cut costs with open source
>>>> >> participation
>>>> >> -Receive a $600 discount off the registration fee with the source code:
>>>> >> SFAD
>>>> >> http://p.sf.net/sfu/XcvMzF8H
>>>> >> _______________________________________________
>>>> >> Statsvn-users mailing list
>>>> >> [hidden email]
>>>> >> https://lists.sourceforge.net/lists/listinfo/statsvn-users
>>>> >>
>>>> >
>>>> >
>>>> >
>>>> > --
>>>> > Jason Kealey - [hidden email]
>>>> > LavaBlast Franchise Software - http://www.lavablast.com
>>>> > Simplifying day-to-day franchise operations
>>>> >
>>>
>>>
>>>
>>> --
>>> Jason Kealey - [hidden email]
>>> LavaBlast Franchise Software - http://www.lavablast.com
>>> Simplifying day-to-day franchise operations
>>>
>>
>
>
>
> --
> Jason Kealey - [hidden email]
> LavaBlast Franchise Software - http://www.lavablast.com
> Simplifying day-to-day franchise operations
>



--
Jason Kealey - [hidden email]
LavaBlast Franchise Software - http://www.lavablast.com
Simplifying day-to-day franchise operations

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Statsvn-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/statsvn-users
Jean-Philippe Daigle

Re: OutOfMemoryError

Reply Threaded More More options
Print post
Permalink
Offtopic: Is this list broken for anyone else using gmail? I'm only getting *part* of the conversation thread!


On Tue, Feb 24, 2009 at 9:46 AM, Jason Kealey <[hidden email]> wrote:
Makes sense! Happy to see we could help!
Jason

On Tue, Feb 24, 2009 at 3:19 AM, Jonatan Hugosson <[hidden email]> wrote:
Hello,

So I tried on Ubunto using java version "1.6.0_10"
Java(TM) SE Runtime Environment (build 1.6.0_10-b33)
Java HotSpot(TM) Server VM (build 11.0-b15, mixed mode)

And it use alot less memory:

writing page 'Development Statistics for  ' to index.html
runtime: 30282.747 seconds
memory usage: 459648.0 kb
[hugosson@pcitdesson CASTOR] $

Compared to:


runtime: 38200.068 seconds
memory usage: 1225664.0 kb

i.e. less than half of the momory usage. So must be something with my
java/OS, no??

Cheers hugo

2009/2/20 Jason Kealey <[hidden email]>:

> Interesting. I am using the same parser as you are, without problems,
> it appears. I don't have enough experience to be able to help you with
> this in greater detail.  Could there be a bug on your OS with this
> parser? Can you try it on other operating systems, just for fun?
>
> Jason
>
> On Fri, Feb 20, 2009 at 5:32 AM, Jonatan Hugosson <[hidden email]> wrote:
>> Hello,
>>
>> Obviosly I am using xerces as java parser
>>
>> -bash-3.2$ $JAVA -Djaxp.debug=1 -jar $STATSVN -notes $NOTESFILE
>> $CO/$shortname.log $CO/$shortname > log2.txtFeb 20, 2009 11:00:03 AM
>> net.sf.statsvn.util.JavaUtilTaskLogger info
>> INFO: StatSVN - SVN statistics generation
>>
>> Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
>> JAXP: find factoryId =javax.xml.parsers.SAXParserFactory
>> JAXP: loaded from fallback value:
>> com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl
>> JAXP: created new instance of class
>> com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl using
>> ClassLoader: null
>> JAXP: find factoryId =javax.xml.parsers.SAXParserFactory
>> JAXP: loaded from fallback value:
>> com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl
>> JAXP: created new instance of class
>> com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl using
>> ClassLoader: null
>> JAXP: find factoryId =javax.xml.parsers.DocumentBuilderFactory
>> JAXP: loaded from fallback value:
>> com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
>> JAXP: created new instance of class
>> com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
>> using ClassLoader: null
>> JAXP: find factoryId =javax.xml.transform.TransformerFactory
>> JAXP: loaded from fallback value:
>> com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl
>> JAXP: created new instance of class
>> com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl
>> using ClassLoader: null
>> JAXP: find factoryId =javax.xml.parsers.DocumentBuilderFactory
>> JAXP: loaded from fallback value:
>> com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
>> JAXP: created new instance of class
>> com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
>> using ClassLoader: null
>> OutOfMemoryError.
>> Try running java with the -mx option (e.g. -mx128m for 128Mb).
>>
>> Any one who knws they are using another one or that xerces is bad??
>>
>> Furthermore I am unable to use the option
>> -Djavax.xml.parsers.SAXParserFactory= ::
>>
>> $JAVA -Djavax.xml.parsers.SAXParserFactory=org.apache.xerces.jaxp
>> -Djaxp.debug=1 -jar $STATSVN -notes $NOTESFILE $CO/$shortname.log
>> $CO/$shortname > log2.txt
>> Feb 20, 2009 11:23:27 AM net.sf.statsvn.util.JavaUtilTaskLogger info
>> INFO: StatSVN - SVN statistics generation
>>
>> Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
>> JAXP: find factoryId =javax.xml.parsers.SAXParserFactory
>> JAXP: found system property, value=org.apache.xerces.jaxp
>> Exception in thread "main"
>> javax.xml.parsers.FactoryConfigurationError: Provider
>> org.apache.xerces.jaxp not found
>>        at javax.xml.parsers.SAXParserFactory.newInstance(SAXParserFactory.java:134)
>>        at net.sf.statsvn.input.SvnLogfileParser.parseSvnLog(SvnLogfileParser.java:603)
>>        at net.sf.statsvn.input.SvnLogfileParser.parse(SvnLogfileParser.java:337)
>>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:279)
>>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:241)
>>        at net.sf.statsvn.Main.generate(Main.java:115)
>>        at net.sf.statsvn.Main.main(Main.java:81)
>>
>> OR:
>>
>> -bash-3.2$ $JAVA
>> -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp
>> -Djaxp.debug=1 -jar $STATSVN -notes $NOTESFILE $CO/$shortname.log
>> $CO/$shortname > log2.txt
>> Feb 20, 2009 11:29:18 AM net.sf.statsvn.util.JavaUtilTaskLogger info
>> INFO: StatSVN - SVN statistics generation
>>
>> Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
>> JAXP: find factoryId =javax.xml.parsers.SAXParserFactory
>> JAXP: found system property, value=com.sun.org.apache.xerces.internal.jaxp
>> Exception in thread "main"
>> javax.xml.parsers.FactoryConfigurationError: Provider
>> com.sun.org.apache.xerces.internal.jaxp not found
>>        at javax.xml.parsers.SAXParserFactory.newInstance(SAXParserFactory.java:134)
>>        at net.sf.statsvn.input.SvnLogfileParser.parseSvnLog(SvnLogfileParser.java:603)
>>        at net.sf.statsvn.input.SvnLogfileParser.parse(SvnLogfileParser.java:337)
>>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:279)
>>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:241)
>>        at net.sf.statsvn.Main.generate(Main.java:115)
>>        at net.sf.statsvn.Main.main(Main.java:81)
>> -bash-3.2$
>>
>> OR:
>>
>> $JAVA -Djavax.xml.parsers.SAXParserFactory=oracle.xml.jaxp.JXSAXParser
>> -Djaxp.debug=1 -jar $STATSVN -notes $NOTESFILE $CO/$shortname.log
>> $CO/$shortname > log2.txt
>> Feb 20, 2009 11:21:38 AM net.sf.statsvn.util.JavaUtilTaskLogger info
>> INFO: StatSVN - SVN statistics generation
>>
>> Parsing SVN log '/svnstats/co/CASTOR.log' exclude pattern 'null'
>> JAXP: find factoryId =javax.xml.parsers.SAXParserFactory
>> JAXP: found system property, value=oracle.xml.jaxp.JXSAXParser
>> Exception in thread "main"
>> javax.xml.parsers.FactoryConfigurationError: Provider
>> oracle.xml.jaxp.JXSAXParser not found
>>        at javax.xml.parsers.SAXParserFactory.newInstance(SAXParserFactory.java:134)
>>        at net.sf.statsvn.input.SvnLogfileParser.parseSvnLog(SvnLogfileParser.java:603)
>>        at net.sf.statsvn.input.SvnLogfileParser.parse(SvnLogfileParser.java:337)
>>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:279)
>>        at net.sf.statsvn.Main.generateDefaultHTMLSuite(Main.java:241)
>>        at net.sf.statsvn.Main.generate(Main.java:115)
>>        at net.sf.statsvn.Main.main(Main.java:81)
>> -bash-3.2$
>>
>> How am I supposed to load it properly??
>>
>> Cheers hugo
>>
>> 2009/2/19 Jason Kealey <[hidden email]>:
>>> You can change the parser by using a system property which is called
>>> "javax.xml.parsers.SAXParserFactory".
>>>
>>> This page has more information on how to check which one you have now:
>>> http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/parsers/SAXParserFactory.html
>>>
>>> You run java with the -D option to set properties... example:
>>> -Djavax.xml.parsers.SAXParserFactory=(name of the good one)
>>>
>>> I have no idea what the default value is supposed to be, and everytime
>>> I check I lose 15min on Google trying to figure it out before I quit
>>> :) Let the mailing list know if you find a setting that works for you!
>>>
>>> Jason
>>>
>>> On Thu, Feb 19, 2009 at 11:33 AM, Jonatan Hugosson <[hidden email]> wrote:
>>>>
>>>> Hello,
>>>>
>>>> Sorry, I am sure it is documented somewhere, but which is the default
>>>> xml parser??
>>>>
>>>> Thanks, hugo
>>>>
>>>> 2009/2/19 Jason Kealey <[hidden email]>:
>>>> > Jonatan,
>>>> > I think the XML Parser you have installed on your machine is probably not
>>>> > the default parser. Some parsers throw null-pointer exceptions and yours
>>>> > appears to have a memory leak and bad performance.
>>>> > Jason
>>>> >
>>>> > On Thu, Feb 19, 2009 at 10:13 AM, Jean-Philippe Daigle <[hidden email]>
>>>> > wrote:
>>>> >>
>>>> >> Hi!
>>>> >>
>>>> >> On Thu, Feb 19, 2009 at 3:57 AM, Jonatan Hugosson <[hidden email]>
>>>> >> wrote:
>>>> >> >> 1) about *where* it's failing with an OutOfMemory exception. If you
>>>> >> >> run with the "-debug" option, you'll get a lot more output (save it to
>>>> >> >> a file, it's going to be huge). I'm wondering if the failure really
>>>> >> >> happens during log parsing or later on.
>>>> >> > see attachement
>>>> >> >
>>>> >> >>
>>>> >> >> 2) about the input file: how big is it? Mine was ~12MB.
>>>> >> >
>>>> >> >
>>>> >> > -bash-3.2$ du -ksx $CO/$shortname.log
>>>> >> > 12800   /svnstats/co/CASTOR.log
>>>> >> >
>>>> >>
>>>> >>
>>>> >> Wow, the log shows it took 19 MINUTES just to parse the XML logfile?
>>>> >> That's very weird, as it's only 12MB. I feed it the same size logfile
>>>> >> and it takes just 20 seconds. I don't know exactly what's wrong with
>>>> >> your run.
>>>> >>
>>>> >> One thing I do notice from the log is that StatSVN is being run on all
>>>> >> branches and tags. This is probably a bad idea. Try making a separate
>>>> >> run / output directory for each branch you care about, but log only
>>>> >> that branch individually. What you're doing here requires you to have
>>>> >> every single branch and tag checked out, which means your workspace
>>>> >> will be absolutely huge and yes, the run will be pretty slow.
>>>> >>
>>>> >>
>>>> >> ------------------------------------------------------------------------------
>>>> >> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco,
>>>> >> CA
>>>> >> -OSBC tackles the biggest issue in open source: Open Sourcing the
>>>> >> Enterprise
>>>> >> -Strategies to boost innovation and cut costs with open source
>>>> >> participation
>>>> >> -Receive a $600 discount off the registration fee with the source code:
>>>> >> SFAD
>>>> >> http://p.sf.net/sfu/XcvMzF8H
>>>> >> _______________________________________________
>>>> >> Statsvn-users mailing list
>>>> >> [hidden email]
>>>> >> https://lists.sourceforge.net/lists/listinfo/statsvn-users
>>>> >>
>>>> >
>>>> >
>>>> >
>>>> > --
>>>> > Jason Kealey - [hidden email]
>>>> > LavaBlast Franchise Software - http://www.lavablast.com
>>>> > Simplifying day-to-day franchise operations
>>>> >
>>>
>>>
>>>
>>> --
>>> Jason Kealey - [hidden email]
>>> LavaBlast Franchise Software - http://www.lavablast.com
>>> Simplifying day-to-day franchise operations
>>>
>>
>
>
>
> --
> Jason Kealey - [hidden email]
> LavaBlast Franchise Software - http://www.lavablast.com
> Simplifying day-to-day franchise operations
>



--
Jason Kealey - [hidden email]
LavaBlast Franchise Software - http://www.lavablast.com
Simplifying day-to-day franchise operations

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Statsvn-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/statsvn-users



------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Statsvn-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/statsvn-users