I'm new to perl but I've been working on a script that will parse a large amount of text and while it's going through it, it will store data in a few different hashes I have (a one dimensional hash, and two-two dimensional hashes). Once I read in all the data, I then sort the hashes and output all of this to a set of log files.
Here's the main chunk of my code that start the text coming in... # Build up the command string appropriately, depending on what options # have been set. my $command = ($rlog_module ne "") ? "cvs -n -d $cvsdir rlog $rlog_module" : "cvs log"; print "Executing \"$command\"\n" if $debug; open (CVSLOG, "$command |") || die "Couldn't execute \"$command\""; while (<CVSLOG>) { .... .... } If you can't see what I'm doing, I'm parsing the return of cvs rlog, I'd like to run this on the root of our CVS repository and extract statistics from that, however, when I run this, I get an "Out Of Memory" error as I'm parsing the text. Is this because I'm using hashes or because there is just a lot of text for cvs rlog on the root? I get the "Out Of Memory" error after it runs for like 30 minutes or so and if I watch the process it usually gives me that error once it is using about 20 MB of memory. I'm new so I don't really know what this could be or where to look for help, thanks in advance, Jacob