ooo-build r14820 - in trunk: doc patches/test
- From: michael svn gnome org
- To: svn-commits-list gnome org
- Subject: ooo-build r14820 - in trunk: doc patches/test
- Date: Wed, 10 Dec 2008 17:57:49 +0000 (UTC)
Author: michael
Date: Wed Dec 10 17:57:49 2008
New Revision: 14820
URL: http://svn.gnome.org/viewvc/ooo-build?rev=14820&view=rev
Log:
misc work.
Added:
trunk/doc/installer.txt
trunk/patches/test/speed-make-installer.diff
Added: trunk/doc/installer.txt
==============================================================================
--- (empty file)
+++ trunk/doc/installer.txt Wed Dec 10 17:57:49 2008
@@ -0,0 +1,57 @@
+** make_installer.pl slowness **
+
++ why is it so bad ?
+
+--------
+
+* 20 seconds ++
+
+ 1816320 0.74356 20.19000 337: $newhash{$key} = ${$oldcollector}[$i]-
+
+ + modules/installer/converter.pm - convert_array_to_hash
+ - 1.8 million calls [ 20 seconds ]
+
+--------
+
+* 30 seconds ++
+
+ 1215650 4.33675 20.69000 2383: if ( $allitems =~ /\b$itemgid\b/i )
+
+modules/installer/scriptitems.pm:sub get_string_of_modulegids_for_itemgid
+
+ 1025 0.00002 0.01000 2376: for ( my $i = 0; $i <= $#{$modulesref}; $i++
+ 0 0.00000 0.00000 2377: {
+ 1215650 0.07093 11.30000 2378: my $onemodule = ${$modulesref}[$i];
+ 1215650 0.11160 10.78000 2379: my $allitems = "";
+
+--------
+
+* 5 seconds ++
+
+ 503880 0.03416 4.62000 283: my $line = ${$scriptref}[$i];
+ 503880 0.08359 5.76000 285: if ( $line =~
+
+
+--------
+
+ 148324 0.10664 1.57000 335: foreach $key (keys %{${$oldcollector}[$i]})
+ 161800 0.02043 1.41000 42: my ( $stringref ) = @_;
+ 161800 0.03524 1.77000 44: $$stringref =~ s/^\s*//;
+ 161800 0.43650 2.52000 45: $$stringref =~ s/\s*$//;
+ 168455 0.00573 1.50000 872: my $directorygid = $onedirectory->{'gid'};
+ 168455 0.01485 1.58000 871: $onedirectory = ${$dirsarrayref}[$i];
+ 168455 0.02226 1.52000 874: if ($directorygid eq $searchgid)
+ 179687 0.02017 1.79000 291: my $packagemodule =
+ 179687 0.03661 1.62000 290: if ( $includefile ) { next; }
+ 179687 0.08935 1.77000 293: if ( $filemodule eq $packagemodule )
+ 180736 0.01710 1.85000 46: if ( ${$arrayref}[$i] eq $searchstring)
+ 218740 0.01105 1.91000 263: ${$scriptref}[$i] = $line;
+ 218740 0.01886 1.64000 261: my $value = $subs{$key};
+ 218740 0.56364 3.96000 262: $line =~ s/$key/$value/g;
+ 503880 0.03416 4.62000 283: my $line = ${$scriptref}[$i];
+ 503880 0.08359 5.76000 285: if ( $line =~
+ 1215650 0.07093 11.30000 2378: my $onemodule = ${$modulesref}[$i];
+ 1215650 0.09240 11.14000 2381: if ( $onemodule->{$itemname} ) { $allitems
+ 1215650 0.11160 10.78000 2379: my $allitems = "";
+ 1215650 4.33675 20.69000 2383: if ( $allitems =~ /\b$itemgid\b/i )
+ 1816320 0.74356 20.19000 337: $newhash{$key} = ${$oldcollector}[$i]-
Added: trunk/patches/test/speed-make-installer.diff
==============================================================================
--- (empty file)
+++ trunk/patches/test/speed-make-installer.diff Wed Dec 10 17:57:49 2008
@@ -0,0 +1,43 @@
+Index: modules/installer/scriptitems.pm
+===================================================================
+RCS file: /cvs/tools/solenv/bin/modules/installer/scriptitems.pm,v
+retrieving revision 1.51.18.2
+diff -u -p -r1.51.18.2 scriptitems.pm
+--- modules/installer/scriptitems.pm 22 Aug 2008 09:16:03 -0000 1.51.18.2
++++ modules/installer/scriptitems.pm 10 Dec 2008 17:56:53 -0000
+@@ -2371,12 +2373,10 @@ sub get_string_of_modulegids_for_itemgid
+ my $haslanguagemodule = 0;
+ my %foundmodules = ();
+
+- for ( my $i = 0; $i <= $#{$modulesref}; $i++ )
++ for my $onemodule (@{$modulesref})
+ {
+- my $onemodule = ${$modulesref}[$i];
+- my $allitems = "";
+-
+- if ( $onemodule->{$itemname} ) { $allitems = $onemodule->{$itemname}; }
++ next if ( $onemodule->{$itemname} );
++ my $allitems = $onemodule->{$itemname};
+
+ if ( $allitems =~ /\b$itemgid\b/i )
+ {
+@@ -2397,6 +2397,8 @@ sub get_string_of_modulegids_for_itemgid
+ if ( ! $isreallylanguagemodule ) { installer::exiter::exit_program("ERROR: \"$itemgid\" is assigned to modules with flag \"LANGUAGEMODULE\" and also to modules without this flag! Modules: $allmodules", "get_string_of_modulegids_for_itemgid"); }
+ }
+
++ print STDERR "get_string_for_itemgid ($itemgid, $itemname) => $allmodules, $haslanguagemodule\n";
++
+ return ($allmodules, $haslanguagemodule);
+ }
+
+@@ -2415,9 +2417,8 @@ sub assigning_modules_to_items
+ my $languageassignmenterror = 0;
+ my @languageassignmenterrors = ();
+
+- for ( my $i = 0; $i <= $#{$itemsref}; $i++ )
++ for my $oneitem (@{$itemsref})
+ {
+- my $oneitem = ${$itemsref}[$i];
+ my $itemgid = $oneitem->{'gid'};
+
+ my $styles = "";
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]