diff options
author | Eric Wong <normalperson@yhbt.net> | 2011-12-12 07:48:36 +0000 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2011-12-12 07:48:36 +0000 |
commit | 594295a29cbc33fc04b7c0b87ecf664f036819a9 (patch) | |
tree | 8fce2eca22344f22a909ca802df7dbc61a776d14 /lib/mogilefs/backend.rb | |
parent | 8a54653184536b99bf74bcaedb8cf84ea0f4f693 (diff) | |
download | mogilefs-client-594295a29cbc33fc04b7c0b87ecf664f036819a9.tar.gz |
This adds an internal :ruby_no_raise flag to the backend to avoid exceptions.
Diffstat (limited to 'lib/mogilefs/backend.rb')
-rw-r--r-- | lib/mogilefs/backend.rb | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/mogilefs/backend.rb b/lib/mogilefs/backend.rb index d04247b..f33c42d 100644 --- a/lib/mogilefs/backend.rb +++ b/lib/mogilefs/backend.rb @@ -264,11 +264,13 @@ class MogileFS::Backend # Performs the +cmd+ request with +args+. def do_request(cmd, args, idempotent = false) - request = make_request cmd, args + no_raise = args.delete(:ruby_no_raise) + request = make_request(cmd, args) @mutex.synchronize do begin io = dispatch_unlocked(request) - line = io.timed_gets(@timeout) and return parse_response(line) + line = io.timed_gets(@timeout) and + return parse_response(line, no_raise ? request : nil) idempotent or raise EOFError, "end of file reached after: #{request.inspect}" |