title: Pheanstalk workers reserving same job multiple times when buried immediately
body: <p>So I use beanstalk_console (<a href="https://github.com/ptrofimov/beanstalk_console" rel="nofollow noreferrer">https://github.com/ptrofimov/beanstalk_console</a>) to monitor my beanstalkd queue and at times, I would get 1 or 2 jobs stuck in the buried state. This is due to how I have my worker code setup, where I immediately bury a job upon being reserved and delete it if all goes well (else it stays buried). I also use supervisord to manage multiple queue workers. Quick code sample below:</p>
  
  <pre><code>$pheanstalk = new Pheanstalk();
  $pheanstalk-&gt;watch('tube');
  while ($job = $pheanstalk-&gt;reserve()) {
      $pheanstalk-&gt;bury($job);
      $success = false;
  
      // Process job here. Set $success to true if no errors were encountered
  
      if ($success) {
          $pheanstalk-&gt;delete($job);
      }
  }
  </code></pre>
  
  <p>Now to my problem: I noticed that if I use beanstalk_console to move my buried jobs back to their designated tubes, there would be random times when all my available workers would reserve the same job at the same time (interestingly, all with a different job id), leading to duplicate work. They all would also get buried at the same time, though beanstalk_console would only show the latest buried job so I'm not sure what's going on. If I add something like <code>sleep(1)</code> just before I bury my job, then only 1 worker reserves the job and I don't get duplicate work. It's almost like immediately burying a job after reservation puts it back into the queue. Is there something wrong with my code? Or something odd with how beanstalk_console is putting jobs back? </p>