class Redis::Client

def multi(&block)

def multi(&block)
  result = call_command [:multi]
  return result unless block_given?
  begin
    yield(self)
    exec
  rescue Exception => e
    discard
    raise e
  end
end