about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2011-12-06 20:53:42 +0000
committerEric Wong <normalperson@yhbt.net>2011-12-06 12:56:31 -0800
commit829d459f7335cb6eb6a2f6d24e0d6f984cef2d52 (patch)
treed052973cda287675beda3e80e2b21e5d704e1c04
parent9ef18521688bb008e173bfcca57f4abcd012205f (diff)
downloadmogilefs-client-829d459f7335cb6eb6a2f6d24e0d6f984cef2d52.tar.gz
-rw-r--r--lib/mogilefs/socket/kgio.rb4
-rw-r--r--lib/mogilefs/socket/pure_ruby.rb4
-rw-r--r--lib/mogilefs/socket_common.rb7
-rw-r--r--test/test_backend.rb2
4 files changed, 9 insertions, 8 deletions
diff --git a/lib/mogilefs/socket/kgio.rb b/lib/mogilefs/socket/kgio.rb
index f752e83..38ebd4d 100644
--- a/lib/mogilefs/socket/kgio.rb
+++ b/lib/mogilefs/socket/kgio.rb
@@ -22,7 +22,7 @@ class MogileFS::Socket < Kgio::Socket
   def timed_read(len, dst = "", timeout = 5)
     case rc = kgio_tryread(len, dst)
     when :wait_readable
-      kgio_wait_readable(timeout) or unreadable_socket!
+      kgio_wait_readable(timeout) or unreadable_socket!(timeout)
     else
       return rc
     end while true
@@ -31,7 +31,7 @@ class MogileFS::Socket < Kgio::Socket
   def timed_peek(len, dst, timeout = 5)
     case rc = kgio_trypeek(len, dst)
     when :wait_readable
-      kgio_wait_readable(timeout) or unreadable_socket!
+      kgio_wait_readable(timeout) or unreadable_socket!(timeout)
     else
       return rc
     end while true
diff --git a/lib/mogilefs/socket/pure_ruby.rb b/lib/mogilefs/socket/pure_ruby.rb
index 25e0bfb..8833d22 100644
--- a/lib/mogilefs/socket/pure_ruby.rb
+++ b/lib/mogilefs/socket/pure_ruby.rb
@@ -24,7 +24,7 @@ class MogileFS::Socket < Socket
 
   def timed_read(len, dst = "", timeout = 5)
     begin
-      IO.select([self], nil, nil, timeout) or unreadable_socket!
+      IO.select([self], nil, nil, timeout) or unreadable_socket!(timeout)
       return read_nonblock(len, dst)
     rescue Errno::EAGAIN
     rescue EOFError
@@ -34,7 +34,7 @@ class MogileFS::Socket < Socket
 
   def timed_peek(len, dst, timeout = 5)
     begin
-      IO.select([self], nil, nil, timeout) or unreadable_socket!
+      IO.select([self], nil, nil, timeout) or unreadable_socket!(timeout)
       rc = recv_nonblock(len, Socket::MSG_PEEK)
       return rc.empty? ? nil : dst.replace(rc)
     rescue Errno::EAGAIN
diff --git a/lib/mogilefs/socket_common.rb b/lib/mogilefs/socket_common.rb
index 404acd0..a716d35 100644
--- a/lib/mogilefs/socket_common.rb
+++ b/lib/mogilefs/socket_common.rb
@@ -12,14 +12,15 @@ module MogileFS::SocketCommon
     self
   end
 
-  def unreadable_socket!
+  def unreadable_socket!(timeout)
     raise MogileFS::UnreadableSocketError,
-          "#@mogilefs_addr never became readable"
+          "#@mogilefs_addr never became readable (timeout=#{timeout.inspect})"
   end
 
   def request_truncated!(written, expect, timeout)
+    timeout = timeout.inspect
     raise MogileFS::RequestTruncatedError,
-     "request truncated (sent #{written} expected #{expect}) after #{timeout}s"
+     "request truncated (sent #{written} expected #{expect} timeout=#{timeout})"
   end
 
   SEP_RE = /\A(.*?#{Regexp.escape("\n")})/
diff --git a/test/test_backend.rb b/test/test_backend.rb
index 860be8f..707c312 100644
--- a/test/test_backend.rb
+++ b/test/test_backend.rb
@@ -117,7 +117,7 @@ class TestBackend < Test::Unit::TestCase
     begin
       @backend.do_request 'foo', {}
     rescue MogileFS::UnreadableSocketError => e
-      assert_equal "127.0.0.1:#{port} never became readable", e.message
+      assert_match(/127\.0\.0\.1:#{port} never became readable/, e.message)
     rescue Exception => err
       flunk "MogileFS::UnreadableSocketError not raised #{err} #{err.backtrace}"
     else