class Redis::Distributed

def watch(*keys, &block)

Watch the given keys to determine execution of the MULTI/EXEC block.
def watch(*keys, &block)
  ensure_same_node(:watch, keys) do |node|
    @watch_key = key_tag(keys.first) || keys.first.to_s
    begin
      node.watch(*keys, &block)
    rescue StandardError
      @watch_key = nil
      raise
    end
  end
end