From wessels at measurement-factory.com Fri Aug 10 23:28:03 2012 From: wessels at measurement-factory.com (Duane Wessels) Date: Fri, 10 Aug 2012 17:28:03 -0600 (MDT) Subject: [dsc] trim_accum2d In-Reply-To: <23B12724-8196-4831-A3B9-F6B0F611ED55@sinodun.com> References: <23B12724-8196-4831-A3B9-F6B0F611ED55@sinodun.com> Message-ID: On Mon, 9 Jul 2012, John Dickinson wrote: > Hi, > > I have been playing with dsc-201203250530, in particular trying to figure out what trim_accum2d does. I think I understand the logic now but in the resulting qtype_vs_tld.dat file I get the following skipped records: > > -:SKIPPED:- 1 955504 > -:SKIPPED:- 12 83801 > -:SKIPPED:- 15 159663 > -:SKIPPED:- 2 402 > -:SKIPPED:- 255 804 > -:SKIPPED:- 28 54397 > -:SKIPPED:- 33 9440 > -:SKIPPED:- 6 54238 > -:SKIPPED_SUM:- 1 1048595 > -:SKIPPED_SUM:- 15 191855 > -:SKIPPED_SUM:- 28 9306 > -:SKIPPED_SUM:- 6 55657 > > I don't understand why there are not 8 -:SKIPPED_SUM:- records. Any ideas? Hi John, I wonder if this patch fixes it: Index: presenter/extractor/dsc-xml-extractor.pl =================================================================== --- presenter/extractor/dsc-xml-extractor.pl (revision 13281) +++ presenter/extractor/dsc-xml-extractor.pl (working copy) @@ -346,6 +346,8 @@ foreach my $k1 (sort {($data->{$b}{$k2} || 0) <=> ($data->{$a}{$k2} || 0)} keys %$data) { next unless defined($data->{$k1}{$k2}); next unless (++$n > 1000); + next if ($k1 eq $DSC::extractor::SKIPPED_KEY); # dont delete this + next if ($k1 eq $DSC::extractor::SKIPPED_SUM_KEY); # dont delete this $data->{$DSC::extractor::SKIPPED_KEY}{$k2}++; $data->{$DSC::extractor::SKIPPED_SUM_KEY}{$k2} += $data->{$k1}{$k2}; delete $data->{$k1}{$k2};