Method: MemCache#flush_all

Defined in:
lib/gems/activesupport-2.2.2/lib/active_support/vendor/memcache-client-1.5.1/memcache.rb

#flush_allObject

Flush the cache from all memcache servers.

Raises:



403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
# File 'lib/gems/activesupport-2.2.2/lib/active_support/vendor/memcache-client-1.5.1/memcache.rb', line 403

def flush_all
  raise MemCacheError, 'No active servers' unless active?
  raise MemCacheError, "Update of readonly cache" if @readonly
  begin
    @mutex.lock if @multithread
    @servers.each do |server|
      begin
        sock = server.socket
        raise MemCacheError, "No connection to server" if sock.nil?
        sock.write "flush_all\r\n"
        result = sock.gets
        raise_on_error_response! result
        result
      rescue SocketError, SystemCallError, IOError => err
        server.close
        raise MemCacheError, err.message
      end
    end
  ensure
    @mutex.unlock if @multithread
  end
end