memcached 0.15.2 → 0.15.3
Sign up to get free protection for your applications and to get access to all the features.
- data.tar.gz.sig +0 -0
- data/CHANGELOG +2 -0
- data/Manifest +0 -1
- data/lib/memcached/behaviors.rb +1 -1
- data/lib/memcached/memcached.rb +10 -3
- data/memcached.gemspec +6 -5
- data/test/setup.rb +11 -4
- data/test/unit/memcached_test.rb +10 -8
- metadata +5 -7
- metadata.gz.sig +1 -1
data.tar.gz.sig
CHANGED
Binary file
|
data/CHANGELOG
CHANGED
data/Manifest
CHANGED
data/lib/memcached/behaviors.rb
CHANGED
@@ -44,7 +44,7 @@ class Memcached
|
|
44
44
|
case behavior
|
45
45
|
when :hash then raise(ArgumentError, msg) unless HASH_VALUES[value]
|
46
46
|
when :distribution then raise(ArgumentError, msg) unless DISTRIBUTION_VALUES[value]
|
47
|
-
when *DIRECT_VALUE_BEHAVIORS then raise(ArgumentError, msg) unless value.is_a?(Numeric) and value
|
47
|
+
when *DIRECT_VALUE_BEHAVIORS then raise(ArgumentError, msg) unless value.is_a?(Numeric) and value >= 0
|
48
48
|
else
|
49
49
|
raise(ArgumentError, msg) unless BEHAVIOR_VALUES[value]
|
50
50
|
end
|
data/lib/memcached/memcached.rb
CHANGED
@@ -418,13 +418,20 @@ Please note that when pipelining is enabled, setter and deleter methods do not r
|
|
418
418
|
|
419
419
|
# Set the servers on the struct.
|
420
420
|
def set_servers(servers)
|
421
|
-
add_method = options[:use_udp] ? "memcached_server_add_udp_with_weight" : "memcached_server_add_with_weight"
|
422
421
|
Array(servers).each_with_index do |server, index|
|
422
|
+
# Socket
|
423
423
|
if server.is_a?(String) and File.socket?(server)
|
424
|
-
|
424
|
+
args = [@struct, server, options[:default_weight].to_i]
|
425
|
+
check_return_code(Lib.memcached_server_add_unix_socket_with_weight(*args))
|
426
|
+
# Network
|
425
427
|
elsif server.is_a?(String) and server =~ /^[\w\d\.-]+(:\d{1,5}){0,2}$/
|
426
428
|
host, port, weight = server.split(":")
|
427
|
-
|
429
|
+
args = [@struct, host, port.to_i, (weight || options[:default_weight]).to_i]
|
430
|
+
if options[:use_udp] #
|
431
|
+
check_return_code(Lib.memcached_server_add_udp_with_weight(*args))
|
432
|
+
else
|
433
|
+
check_return_code(Lib.memcached_server_add_with_weight(*args))
|
434
|
+
end
|
428
435
|
else
|
429
436
|
raise ArgumentError, "Servers must be either in the format 'host:port[:weight]' (e.g., 'localhost:11211' or 'localhost:11211:10') for a network server, or a valid path to a Unix domain socket (e.g., /var/run/memcached)."
|
430
437
|
end
|
data/memcached.gemspec
CHANGED
@@ -2,29 +2,30 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{memcached}
|
5
|
-
s.version = "0.15.
|
5
|
+
s.version = "0.15.3"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Evan Weaver"]
|
9
9
|
s.cert_chain = ["/Users/eweaver/p/configuration/gem_certificates/evan_weaver-original-public_cert.pem"]
|
10
|
-
s.date = %q{2009-08-
|
10
|
+
s.date = %q{2009-08-07}
|
11
11
|
s.description = %q{An interface to the libmemcached C client.}
|
12
12
|
s.email = %q{}
|
13
13
|
s.extensions = ["ext/extconf.rb"]
|
14
14
|
s.extra_rdoc_files = ["BENCHMARKS", "CHANGELOG", "COMPATIBILITY", "lib/memcached/behaviors.rb", "lib/memcached/exceptions.rb", "lib/memcached/memcached.rb", "lib/memcached/rails.rb", "lib/memcached.rb", "LICENSE", "README", "TODO"]
|
15
|
-
s.files = ["BENCHMARKS", "CHANGELOG", "COMPATIBILITY", "ext/extconf.rb", "ext/libmemcached-0.31.tar.gz", "ext/rlibmemcached.i", "ext/rlibmemcached_wrap.c", "lib/memcached/behaviors.rb", "lib/memcached/exceptions.rb", "lib/memcached/integer.rb", "lib/memcached/memcached.rb", "lib/memcached/rails.rb", "lib/memcached.rb", "LICENSE", "Manifest", "
|
15
|
+
s.files = ["BENCHMARKS", "CHANGELOG", "COMPATIBILITY", "ext/extconf.rb", "ext/libmemcached-0.31.tar.gz", "ext/rlibmemcached.i", "ext/rlibmemcached_wrap.c", "lib/memcached/behaviors.rb", "lib/memcached/exceptions.rb", "lib/memcached/integer.rb", "lib/memcached/memcached.rb", "lib/memcached/rails.rb", "lib/memcached.rb", "LICENSE", "Manifest", "Rakefile", "README", "test/profile/benchmark.rb", "test/profile/profile.rb", "test/profile/valgrind.rb", "test/setup.rb", "test/teardown.rb", "test/test_helper.rb", "test/unit/binding_test.rb", "test/unit/memcached_test.rb", "test/unit/rails_test.rb", "TODO", "memcached.gemspec"]
|
16
|
+
s.has_rdoc = true
|
16
17
|
s.homepage = %q{http://blog.evanweaver.com/files/doc/fauna/memcached/}
|
17
18
|
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Memcached", "--main", "README"]
|
18
19
|
s.require_paths = ["lib", "ext"]
|
19
20
|
s.rubyforge_project = %q{fauna}
|
20
|
-
s.rubygems_version = %q{1.3.
|
21
|
+
s.rubygems_version = %q{1.3.1}
|
21
22
|
s.signing_key = %q{/Users/eweaver/p/configuration/gem_certificates/evan_weaver-original-private_key.pem}
|
22
23
|
s.summary = %q{An interface to the libmemcached C client.}
|
23
24
|
s.test_files = ["test/test_helper.rb", "test/unit/binding_test.rb", "test/unit/memcached_test.rb", "test/unit/rails_test.rb"]
|
24
25
|
|
25
26
|
if s.respond_to? :specification_version then
|
26
27
|
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
27
|
-
s.specification_version =
|
28
|
+
s.specification_version = 2
|
28
29
|
|
29
30
|
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
30
31
|
else
|
data/test/setup.rb
CHANGED
@@ -11,12 +11,19 @@ unless defined? UNIX_SOCKET_NAME
|
|
11
11
|
log = "/tmp/memcached.log"
|
12
12
|
system ">#{log}"
|
13
13
|
|
14
|
-
#
|
14
|
+
# TCP memcached
|
15
15
|
(43042..43046).each do |port|
|
16
|
-
|
17
|
-
|
16
|
+
cmd = "memcached #{verbosity} -U 0 -p #{port} >> #{log} 2>&1 &"
|
17
|
+
raise "'#{cmd}' failed to start" unless system(cmd)
|
18
|
+
end
|
19
|
+
# UDP memcached
|
20
|
+
(43052..43053).each do |port|
|
21
|
+
cmd = "memcached #{verbosity} -U #{port} -p 0 >> #{log} 2>&1 &"
|
22
|
+
raise "'#{cmd}' failed to start" unless system(cmd)
|
23
|
+
end
|
18
24
|
# Domain socket memcached
|
19
25
|
(0..1).each do |i|
|
20
|
-
|
26
|
+
cmd = "memcached -M -s #{UNIX_SOCKET_NAME}#{i} #{verbosity} >> #{log} 2>&1 &"
|
27
|
+
raise "'#{cmd}' failed to start" unless system(cmd)
|
21
28
|
end
|
22
29
|
end
|
data/test/unit/memcached_test.rb
CHANGED
@@ -8,6 +8,7 @@ class MemcachedTest < Test::Unit::TestCase
|
|
8
8
|
|
9
9
|
def setup
|
10
10
|
@servers = ['localhost:43042', 'localhost:43043', "#{UNIX_SOCKET_NAME}0"]
|
11
|
+
@udp_servers = ['localhost:43052', 'localhost:43053']
|
11
12
|
|
12
13
|
# Maximum allowed prefix key size for :hash_with_prefix_key_key => false
|
13
14
|
@prefix_key = 'prefix_key_'
|
@@ -22,10 +23,10 @@ class MemcachedTest < Test::Unit::TestCase
|
|
22
23
|
@udp_options = {
|
23
24
|
:prefix_key => @prefix_key,
|
24
25
|
:hash => :default,
|
25
|
-
:
|
26
|
+
:use_udp => true,
|
26
27
|
:distribution => :modula
|
27
28
|
}
|
28
|
-
@udp_cache = Memcached.new(@
|
29
|
+
@udp_cache = Memcached.new(@udp_servers, @udp_options)
|
29
30
|
|
30
31
|
@nb_options = {
|
31
32
|
:prefix_key => @prefix_key,
|
@@ -218,13 +219,14 @@ class MemcachedTest < Test::Unit::TestCase
|
|
218
219
|
result = @cache.get key
|
219
220
|
assert_equal @value, result
|
220
221
|
end
|
221
|
-
|
222
|
-
def test_udp_get
|
223
|
-
@udp_cache.set key, @value
|
224
|
-
result = @udp_cache.get key
|
225
|
-
assert_equal @value, result
|
226
|
-
end
|
227
222
|
|
223
|
+
def test_udp_get
|
224
|
+
@udp_cache.set(key, @value)
|
225
|
+
assert_raises(Memcached::ActionNotSupported) do
|
226
|
+
@udp_cache.get(key)
|
227
|
+
end
|
228
|
+
end
|
229
|
+
|
228
230
|
def test_get_nil
|
229
231
|
@cache.set key, nil, 0
|
230
232
|
result = @cache.get key
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: memcached
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.15.
|
4
|
+
version: 0.15.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Evan Weaver
|
@@ -30,7 +30,7 @@ cert_chain:
|
|
30
30
|
yZ0=
|
31
31
|
-----END CERTIFICATE-----
|
32
32
|
|
33
|
-
date: 2009-08-
|
33
|
+
date: 2009-08-07 00:00:00 -07:00
|
34
34
|
default_executable:
|
35
35
|
dependencies: []
|
36
36
|
|
@@ -68,7 +68,6 @@ files:
|
|
68
68
|
- lib/memcached.rb
|
69
69
|
- LICENSE
|
70
70
|
- Manifest
|
71
|
-
- memcached.gemspec
|
72
71
|
- Rakefile
|
73
72
|
- README
|
74
73
|
- test/profile/benchmark.rb
|
@@ -81,10 +80,9 @@ files:
|
|
81
80
|
- test/unit/memcached_test.rb
|
82
81
|
- test/unit/rails_test.rb
|
83
82
|
- TODO
|
83
|
+
- memcached.gemspec
|
84
84
|
has_rdoc: true
|
85
85
|
homepage: http://blog.evanweaver.com/files/doc/fauna/memcached/
|
86
|
-
licenses: []
|
87
|
-
|
88
86
|
post_install_message:
|
89
87
|
rdoc_options:
|
90
88
|
- --line-numbers
|
@@ -111,9 +109,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
111
109
|
requirements: []
|
112
110
|
|
113
111
|
rubyforge_project: fauna
|
114
|
-
rubygems_version: 1.3.
|
112
|
+
rubygems_version: 1.3.1
|
115
113
|
signing_key:
|
116
|
-
specification_version:
|
114
|
+
specification_version: 2
|
117
115
|
summary: An interface to the libmemcached C client.
|
118
116
|
test_files:
|
119
117
|
- test/test_helper.rb
|
metadata.gz.sig
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
<�[({�+��I~�P��ܧ�I+�:���twݕq��b�g� �Ծ�݃�a%+����A���b9��qUcQ������=�2wF�rQ<��X:�����q�BLB\t*J�����c���;(��u��~tBs�7_����wg㣏?@�RČ-A3���8d�#<2Ʌ�`����X!Ӓ|�C�����q-,��?���B�r�pL����i�AQ-����0ɗ�cjc��Ȧ��4�9����R�c����0�W
|