Diff for /loncom/lond between versions 1.318.2.3 and 1.318.2.5

version 1.318.2.3, 2006/02/09 20:48:40 version 1.318.2.5, 2006/03/03 22:03:17
Line 2915  sub dump_profile_database { Line 2915  sub dump_profile_database {
  while (my ($key,$value) = each(%$hashref)) {   while (my ($key,$value) = each(%$hashref)) {
     my ($v,$symb,$param) = split(/:/,$key);      my ($v,$symb,$param) = split(/:/,$key);
     next if ($v eq 'version' || $symb eq 'keys');      next if ($v eq 'version' || $symb eq 'keys');
     if (!defined($param)) {      # making old style store  entries '$ver:$symb:$key = $value'
  foreach my $pair (split(/\&/,$value)) {      # look like new             '$ver:compressed:$symb = "$key=$value"'
     my ($param,$value)=split(/=/,$pair);      if ($symb eq 'compressed') {
     next if (exists($data{$symb}) &&    $symb = $param;
      exists($data{$symb}->{$param}) &&  
      $data{$symb}->{'v.'.$param} > $v);  
     $data{$symb}->{$param}=$value;  
     $data{$symb}->{'v.'.$param}=$v;  
  }  
     } else {      } else {
    $value = $param.'='.$value;
       }
       foreach my $pair (split(/\&/,$value)) {
    my ($param,$value)=split(/=/,$pair);
  next if (exists($data{$symb}) &&    next if (exists($data{$symb}) && 
  exists($data{$symb}->{$param}) &&   exists($data{$symb}->{$param}) &&
  $data{$symb}->{'v.'.$param} > $v);   $data{$symb}->{'v.'.$param} > $v);
Line 3082  sub store_handler { Line 3081  sub store_handler {
  my ($key)=split(/=/,$pair);   my ($key)=split(/=/,$pair);
  $allkeys.=$key.':';   $allkeys.=$key.':';
     }      }
     $hashref->{"$version:$rid"}=$what."\&timestamp=$now";      $hashref->{"$version:compressed:$rid"}=$what."\&timestamp=$now";
     $allkeys.='timestamp';      $allkeys.='timestamp';
     $hashref->{"$version:keys:$rid"}=$allkeys;      $hashref->{"$version:keys:$rid"}=$allkeys;
     if (&untie_user_hash($hashref)) {      if (&untie_user_hash($hashref)) {
Line 3148  sub restore_handler { Line 3147  sub restore_handler {
     my @keys=split(/:/,$vkeys);      my @keys=split(/:/,$vkeys);
     my $key;      my $key;
     $qresult.="$scope:keys=$vkeys&";      $qresult.="$scope:keys=$vkeys&";
     if (exists($hashref->{"$scope:$rid"})) {      if (exists($hashref->{"$scope:compressed:$rid"})) {
  my $what=$hashref->{"$scope:$rid"};   foreach my $pair (split(/\&/,$hashref->{"$scope:compressed:$rid"})) {
  foreach my $pair (split(/\&/,$hashref->{"$scope:$rid"})) {  
     my ($key,$value)=split(/=/,$pair);      my ($key,$value)=split(/=/,$pair);
     $qresult.="$scope:".$pair."&";      $qresult.="$scope:".$pair."&";
  }   }

Removed from v.1.318.2.3  
changed lines
  Added in v.1.318.2.5


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>