thrift_client 0.6.0 → 0.6.1
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +2 -0
- data/Rakefile +1 -3
- data/lib/thrift_client/abstract_thrift_client.rb +2 -1
- data/test/thrift_client_test.rb +15 -2
- data/thrift_client.gemspec +7 -8
- metadata +10 -12
data/CHANGELOG
CHANGED
data/Rakefile
CHANGED
@@ -7,10 +7,8 @@ Echoe.new("thrift_client") do |p|
|
|
7
7
|
p.project = "fauna"
|
8
8
|
p.summary = "A Thrift client wrapper that encapsulates some common failover behavior."
|
9
9
|
p.rubygems_version = ">= 0.8"
|
10
|
-
p.dependencies = ['thrift ~>0.
|
10
|
+
p.dependencies = ['thrift ~>0.6.0']
|
11
11
|
p.ignore_pattern = /^(vendor\/thrift)/
|
12
12
|
p.rdoc_pattern = /^(lib|bin|tasks|ext)|^README|^CHANGELOG|^TODO|^LICENSE|^COPYING$/
|
13
|
-
p.url = "http://blog.evanweaver.com/files/doc/fauna/thrift_client/"
|
14
|
-
p.docs_host = "blog.evanweaver.com:~/www/bax/public/files/doc/"
|
15
13
|
p.spec_pattern = "spec/*_spec.rb"
|
16
14
|
end
|
@@ -38,6 +38,7 @@ class AbstractThriftClient
|
|
38
38
|
:server_max_requests => nil,
|
39
39
|
:retry_overrides => {},
|
40
40
|
:wrapped_exception_classes => DEFAULT_WRAPPED_ERRORS,
|
41
|
+
:connect_timeout => 0.1,
|
41
42
|
:timeout => 1,
|
42
43
|
:timeout_overrides => {}
|
43
44
|
}
|
@@ -78,7 +79,7 @@ class AbstractThriftClient
|
|
78
79
|
# call.
|
79
80
|
def connect!
|
80
81
|
@current_server = next_live_server
|
81
|
-
@connection = Connection::Factory.create(@options[:transport], @options[:transport_wrapper], @current_server.connection_string, @options[:
|
82
|
+
@connection = Connection::Factory.create(@options[:transport], @options[:transport_wrapper], @current_server.connection_string, @options[:connect_timeout])
|
82
83
|
@connection.connect!
|
83
84
|
@client = @client_class.new(@options[:protocol].new(@connection.transport, *@options[:protocol_extra_params]))
|
84
85
|
end
|
data/test/thrift_client_test.rb
CHANGED
@@ -91,12 +91,25 @@ class ThriftClientTest < Test::Unit::TestCase
|
|
91
91
|
end
|
92
92
|
end
|
93
93
|
|
94
|
+
def test_socket_timeout
|
95
|
+
stub_server(@port) do |socket|
|
96
|
+
measurement = Benchmark.measure do
|
97
|
+
assert_raises(Greeter::Client::TransportException) do
|
98
|
+
ThriftClient.new(Greeter::Client, "127.0.0.1:#{@port}",
|
99
|
+
@options.merge(:timeout => 1, :connect_timeout => 0.5)
|
100
|
+
).greeting("someone")
|
101
|
+
end
|
102
|
+
end
|
103
|
+
assert(measurement.real > 0.5 && measurement.real < 1)
|
104
|
+
end
|
105
|
+
end
|
106
|
+
|
94
107
|
def test_framed_transport_timeout
|
95
108
|
stub_server(@port) do |socket|
|
96
109
|
measurement = Benchmark.measure do
|
97
110
|
assert_raises(Greeter::Client::TransportException) do
|
98
111
|
ThriftClient.new(Greeter::Client, "127.0.0.1:#{@port}",
|
99
|
-
@options.merge(:timeout => @timeout)
|
112
|
+
@options.merge(:timeout => @timeout, :connect_timeout => @timeout)
|
100
113
|
).greeting("someone")
|
101
114
|
end
|
102
115
|
end
|
@@ -108,7 +121,7 @@ class ThriftClientTest < Test::Unit::TestCase
|
|
108
121
|
stub_server(@port) do |socket|
|
109
122
|
measurement = Benchmark.measure do
|
110
123
|
client = ThriftClient.new(Greeter::Client, "127.0.0.1:#{@port}",
|
111
|
-
@options.merge(:timeout => @timeout, :transport_wrapper => Thrift::BufferedTransport)
|
124
|
+
@options.merge(:timeout => @timeout, :transport_wrapper => Thrift::BufferedTransport, :connect_timeout => @timeout)
|
112
125
|
)
|
113
126
|
assert_raises(Greeter::Client::TransportException) do
|
114
127
|
client.greeting("someone")
|
data/thrift_client.gemspec
CHANGED
@@ -2,33 +2,32 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{thrift_client}
|
5
|
-
s.version = "0.6.
|
5
|
+
s.version = "0.6.1"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 0.8") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Evan Weaver, Ryan King, Jeff Hodges"]
|
9
|
-
s.date = %q{
|
9
|
+
s.date = %q{2011-05-09}
|
10
10
|
s.description = %q{A Thrift client wrapper that encapsulates some common failover behavior.}
|
11
11
|
s.email = %q{}
|
12
12
|
s.extra_rdoc_files = ["CHANGELOG", "LICENSE", "README.rdoc", "lib/thrift_client.rb", "lib/thrift_client/abstract_thrift_client.rb", "lib/thrift_client/connection.rb", "lib/thrift_client/connection/base.rb", "lib/thrift_client/connection/factory.rb", "lib/thrift_client/connection/http.rb", "lib/thrift_client/connection/socket.rb", "lib/thrift_client/event_machine.rb", "lib/thrift_client/simple.rb", "lib/thrift_client/thrift.rb"]
|
13
13
|
s.files = ["CHANGELOG", "LICENSE", "Manifest", "README.rdoc", "Rakefile", "lib/thrift_client.rb", "lib/thrift_client/abstract_thrift_client.rb", "lib/thrift_client/connection.rb", "lib/thrift_client/connection/base.rb", "lib/thrift_client/connection/factory.rb", "lib/thrift_client/connection/http.rb", "lib/thrift_client/connection/socket.rb", "lib/thrift_client/event_machine.rb", "lib/thrift_client/simple.rb", "lib/thrift_client/thrift.rb", "test/greeter/greeter.rb", "test/greeter/greeter.thrift", "test/greeter/server.rb", "test/multiple_working_servers_test.rb", "test/simple_test.rb", "test/test_helper.rb", "test/thrift_client_http_test.rb", "test/thrift_client_test.rb", "thrift_client.gemspec"]
|
14
|
-
s.homepage = %q{http://
|
14
|
+
s.homepage = %q{http://fauna.github.com/fauna/thrift_client/}
|
15
15
|
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Thrift_client", "--main", "README.rdoc"]
|
16
16
|
s.require_paths = ["lib"]
|
17
17
|
s.rubyforge_project = %q{fauna}
|
18
|
-
s.rubygems_version = %q{1.
|
18
|
+
s.rubygems_version = %q{1.7.2}
|
19
19
|
s.summary = %q{A Thrift client wrapper that encapsulates some common failover behavior.}
|
20
20
|
s.test_files = ["test/multiple_working_servers_test.rb", "test/simple_test.rb", "test/test_helper.rb", "test/thrift_client_http_test.rb", "test/thrift_client_test.rb"]
|
21
21
|
|
22
22
|
if s.respond_to? :specification_version then
|
23
|
-
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
24
23
|
s.specification_version = 3
|
25
24
|
|
26
25
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
27
|
-
s.add_runtime_dependency(%q<thrift>, ["~> 0.
|
26
|
+
s.add_runtime_dependency(%q<thrift>, ["~> 0.6.0"])
|
28
27
|
else
|
29
|
-
s.add_dependency(%q<thrift>, ["~> 0.
|
28
|
+
s.add_dependency(%q<thrift>, ["~> 0.6.0"])
|
30
29
|
end
|
31
30
|
else
|
32
|
-
s.add_dependency(%q<thrift>, ["~> 0.
|
31
|
+
s.add_dependency(%q<thrift>, ["~> 0.6.0"])
|
33
32
|
end
|
34
33
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: thrift_client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 5
|
5
|
+
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 6
|
9
|
-
-
|
10
|
-
version: 0.6.
|
9
|
+
- 1
|
10
|
+
version: 0.6.1
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Evan Weaver, Ryan King, Jeff Hodges
|
@@ -15,8 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date:
|
19
|
-
default_executable:
|
18
|
+
date: 2011-05-09 00:00:00 Z
|
20
19
|
dependencies:
|
21
20
|
- !ruby/object:Gem::Dependency
|
22
21
|
name: thrift
|
@@ -26,12 +25,12 @@ dependencies:
|
|
26
25
|
requirements:
|
27
26
|
- - ~>
|
28
27
|
- !ruby/object:Gem::Version
|
29
|
-
hash:
|
28
|
+
hash: 7
|
30
29
|
segments:
|
31
30
|
- 0
|
32
|
-
-
|
31
|
+
- 6
|
33
32
|
- 0
|
34
|
-
version: 0.
|
33
|
+
version: 0.6.0
|
35
34
|
type: :runtime
|
36
35
|
version_requirements: *id001
|
37
36
|
description: A Thrift client wrapper that encapsulates some common failover behavior.
|
@@ -79,8 +78,7 @@ files:
|
|
79
78
|
- test/thrift_client_http_test.rb
|
80
79
|
- test/thrift_client_test.rb
|
81
80
|
- thrift_client.gemspec
|
82
|
-
|
83
|
-
homepage: http://blog.evanweaver.com/files/doc/fauna/thrift_client/
|
81
|
+
homepage: http://fauna.github.com/fauna/thrift_client/
|
84
82
|
licenses: []
|
85
83
|
|
86
84
|
post_install_message:
|
@@ -115,7 +113,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
115
113
|
requirements: []
|
116
114
|
|
117
115
|
rubyforge_project: fauna
|
118
|
-
rubygems_version: 1.
|
116
|
+
rubygems_version: 1.7.2
|
119
117
|
signing_key:
|
120
118
|
specification_version: 3
|
121
119
|
summary: A Thrift client wrapper that encapsulates some common failover behavior.
|