anchor.diff:              let paused = multi.ListRangeAsync (this.toKey("paused"), 0L, -1L) 
               do multi.KeyDeleteAsync(this.toKey("wait")) |> ignore
               do multi.KeyDeleteAsync(this.toKey("paused")) |> ignore
  +            do multi.KeyDeleteAsync(this.toKey("meta-paused")) |> ignore
  +            do multi.KeyDeleteAsync(this.toKey("delayed")) |> ignore
               do multi.ExecuteAsync() |> ignore
               
               let jobKeys = Array.concat [|waiting.Result; paused.Result|]
  
positive.code:                     async {
                          this.updateDelayTimer(v |> float)
                      } |> Async.RunSynchronously))
  
      do logger.Info "subscribed to %A" newJobChannel
  
  
negative.code:             let multi = (this.client ()).CreateTransaction()
              let waitLength = multi.ListLengthAsync (this.toKey("wait"))
              let pausedLength = multi.ListLengthAsync (this.toKey("paused"))
              let delayedLength = multi.SortedSetLengthAsync (this.toKey("delayed"))
              do! multi.ExecuteAsync () |> Async.AwaitTask |> Async.Ignore
              return [| waitLength.Result; pausedLength.Result; |] |> Seq.max + delayedLength.Result
          }
      
      /// empty the queue doesn't remove the jobs just removes the wait list so it won't do anything else.
  