Talk About Network



Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > Perl Cvs P5ee > [svn:p5ee] r105...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 1 of 1 Topic 652 of 694
Post > Topic >>

[svn:p5ee] r10584 - p5ee/trunk/App-WorkQueue/lib/App

by spadkins@[EMAIL PROTECTED] Jan 17, 2008 at 08:39 AM

Author: spadkins
Date: Thu Jan 17 08:39:20 2008
New Revision: 10584

Modified:
   p5ee/trunk/App-WorkQueue/lib/App/WorkQueue.pm

Log:
fixed a bug in _push_in_mem which was pushing ACQUIRED entries off the end
of the queue when it shouldn't be

Modified: p5ee/trunk/App-WorkQueue/lib/App/WorkQueue.pm
==============================================================================
--- p5ee/trunk/App-WorkQueue/lib/App/WorkQueue.pm	(original)
+++ p5ee/trunk/App-WorkQueue/lib/App/WorkQueue.pm	Thu Jan 17 08:39:20 2008
@[EMAIL PROTECTED]
 -245,6 +245,10 @[EMAIL PROTECTED]
     my ($self, $entry, $release_lowest) = @[EMAIL PROTECTED]
     my $ref = ref($entry);
     my $type = "";
+    my $status_attrib = $self->{status_attrib};
+    my $STATUS_ACQUIRED = $self->{STATUS_ACQUIRED};
+    my $STATUS_UNACQUIRED = $self->{STATUS_UNACQUIRED};
+    my $STATUS_UNBUFFERED = $self->{STATUS_UNBUFFERED};
     if ($ref eq "ARRAY") {
         $type = "ARRAY";
         print "PUSHED[M]: [", join("|",@[EMAIL PROTECTED]
), "]\n" if ($verbose);
@[EMAIL PROTECTED]
 -263,7 +267,7 @[EMAIL PROTECTED]
         }
         else {
             CORE::push(@[EMAIL PROTECTED]
 $entry);
-           
$self->update($entry,[$self->{status_attrib}],[$self->{STATUS_UNACQUIRED}]);
+            $self->update($entry,[$status_attrib],[$STATUS_UNACQUIRED]);
             $num_added = 1;
         }
     }
@[EMAIL PROTECTED]
 -284,15 +288,15 @[EMAIL PROTECTED]
                             $removed  = 1;
                         }
                         else {
-                           
$self->update($entry,[$self->{status_attrib}],[$self->{STATUS_UNACQUIRED}]);
+                           
$self->update($entry,[$status_attrib],[$STATUS_UNACQUIRED]);
                             splice(@[EMAIL PROTECTED]
 $i+1, 0, $entry);
                             $num_added++;
                             $inserted = 1;
                         }
                     }
-                    if (!$removed) {
+                    if (!$removed && ($ent->{$status_attrib} ne
$STATUS_ACQUIRED)) {
                         $removed_entry = $entries->[$i];
-                       
$self->update($removed_entry,[$self->{status_attrib}],[$self->{STATUS_UNBUFFERED}]);
+                       
$self->update($removed_entry,[$status_attrib],[$STATUS_UNBUFFERED]);
                         splice(@[EMAIL PROTECTED]
 $i, 1);
                         $num_added--;
                         $removed = 1;
@[EMAIL PROTECTED]
 -300,7 +304,7 @[EMAIL PROTECTED]
                 }
                 else { # this block, we are certain we are not comparing
to ourselves
                     if ($removed && !$inserted &&
$self->_compare_entries($entry, $ent) > -1) {
-                       
$self->update($entry,[$self->{status_attrib}],[$self->{STATUS_UNACQUIRED}]);
+                       
$self->update($entry,[$status_attrib],[$STATUS_UNACQUIRED]);
                         splice(@[EMAIL PROTECTED]
 $i+1, 0, $entry);
                         $num_added++;
                         $inserted = 1;
@[EMAIL PROTECTED]
 -318,7 +322,7 @[EMAIL PROTECTED]
                     last;
                 }
                 elsif ($cmp == 1) { # it's lower priority (and different)
-                   
$self->update($entry,[$self->{status_attrib}],[$self->{STATUS_UNACQUIRED}]);
+                   
$self->update($entry,[$status_attrib],[$STATUS_UNACQUIRED]);
                     splice(@[EMAIL PROTECTED]
 $i+1, 0, $entry);
                     $num_added++;
                     $inserted = 1;
@[EMAIL PROTECTED]
 -327,7 +331,7 @[EMAIL PROTECTED]
             }
         }
         if (!$inserted) {
-           
$self->update($entry,[$self->{status_attrib}],[$self->{STATUS_UNACQUIRED}]);
+            $self->update($entry,[$status_attrib],[$STATUS_UNACQUIRED]);
             unshift(@[EMAIL PROTECTED]
 $entry);
             $num_added++;
         }




 1 Posts in Topic:
[svn:p5ee] r10584 - p5ee/trunk/App-WorkQueue/lib/App
spadkins@[EMAIL PROTECTED  2008-01-17 08:39:21 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Thu May 15 1:23:27 CDT 2008.