/[Sack]/trunk/lib/Sack/Server.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/lib/Sack/Server.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 234 by dpavlin, Mon Nov 23 23:52:53 2009 UTC revision 235 by dpavlin, Tue Nov 24 00:46:19 2009 UTC
# Line 110  sub run_view { Line 110  sub run_view {
110          my $code = read_file $path;          my $code = read_file $path;
111          Sack::Merge->clean;          Sack::Merge->clean;
112          delete( $info->{view} );          delete( $info->{view} );
113            delete( $info->{merge} );
114          to_all { code => $code, view => $path };          to_all { code => $code, view => $path };
115  };  };
116    
# Line 185  while (1) { Line 186  while (1) {
186                                                  if ( my $s = $info->{view}->{$view} ) {                                                  if ( my $s = $info->{view}->{$view} ) {
187                                                          my @nodes = sort keys %$s;                                                          my @nodes = sort keys %$s;
188                                                          my $total = 0;                                                          my $total = 0;
189                                                          $html .= qq|<table><tr><th>node</th><th>rows</th><th>shards</th><th>&sum;</th></tr>|;                                                          my $total_merged = 0;
190                                                            $html .= qq|<table><tr><th>node</th><th>rows</th><th>shards</th><th>&sum;</th><th>merge</th><th>&sum;</th></tr>|;
191                                                          foreach my $node ( @nodes ) {                                                          foreach my $node ( @nodes ) {
192                                                                  my $h = '';                                                                  my $h = '';
193                                                                  my $shard = 0;                                                                  my $shard = 0;
# Line 193  while (1) { Line 195  while (1) {
195                                                                          my $affected = $s->{$node}->{$path};                                                                          my $affected = $s->{$node}->{$path};
196                                                                          my $n = '?';                                                                          my $n = '?';
197                                                                          $n = $1 if $path =~ m{/(\w)\w+/\d+};                                                                          $n = $1 if $path =~ m{/(\w)\w+/\d+};
198                                                                          $h .= qq|<tt title="$affected $path">$n</tt>|;                                                                          my $class = $affected == 0 ? 'style="color: #888"' : '';
199                                                                            $h .= qq|<tt title="$affected $path"$class>$n</tt>|;
200                                                                          $shard += $affected;                                                                          $shard += $affected;
201                                                                          $total += $affected;                                                                          $total += $affected;
202                                                                  }                                                                  }
203                                                                  $html .= qq|<tr><td><tt>$node</tt></td><td>$shard</td><td>$h</td><td>$total</td></tr>\n|;                                                                  my $merge = $info->{merge}->{$view}->{$node};
204                                                                    $total_merged += $merge;
205                                                                    $html .= qq|<tr><td><tt>$node</tt></td><td>$shard</td><td>$h</td><td>$total</td><td>$merge</td><td>$total_merged</td></tr>\n|;
206                                                          }                                                          }
207    
208                                                          $html .= qq|</table>|;                                                          $html .= qq|</table>|;
# Line 294  while (1) { Line 299  while (1) {
299                                          } else {                                          } else {
300                                                  warn "no more shards for [", $data->{port}, "]\n";                                                  warn "no more shards for [", $data->{port}, "]\n";
301                                          }                                          }
302                                  } elsif ( defined $data->{out} ) {                                  } elsif ( exists $data->{out} ) {
303                                          Sack::Merge->add( $data->{out} );                                          my $added = Sack::Merge->add( $data->{out} ) if defined $data->{out};
304                                          $info->{view}->{ $data->{view} }->{ $data->{port} } = $data->{on_shard};                                          $info->{merge}->{ $data->{view} }->{ $data->{port} } = $added;
305                                            $info->{view }->{ $data->{view} }->{ $data->{port} } = $data->{on_shard};
306                                  } else {                                  } else {
307                                          warn "UNKNOWN ",dump($data);                                          warn "UNKNOWN ",dump($data);
308                                  }                                  }

Legend:
Removed from v.234  
changed lines
  Added in v.235

  ViewVC Help
Powered by ViewVC 1.1.26