zookeeper 1.0.4 → 1.0.5
Sign up to get free protection for your applications and to get access to all the features.
- data/.ctags_paths +1 -0
- data/CHANGELOG +6 -0
- data/Rakefile +3 -0
- data/ext/c_zookeeper.rb +5 -7
- data/ext/zookeeper_base.rb +9 -7
- data/ext/zookeeper_lib.c +1 -1
- data/java/java_base.rb +8 -10
- data/lib/zookeeper.rb +2 -1
- data/lib/zookeeper/client_methods.rb +1 -4
- data/lib/zookeeper/common/queue_with_pipe.rb +1 -4
- data/lib/zookeeper/logger.rb +22 -0
- data/lib/zookeeper/version.rb +1 -1
- data/spec/ext/zookeeper_base_spec.rb +19 -0
- data/spec/support/zookeeper_spec_helpers.rb +1 -4
- metadata +8 -4
data/.ctags_paths
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
~/vendor/ruby/*.{c,h}
|
data/CHANGELOG
CHANGED
data/Rakefile
CHANGED
data/ext/c_zookeeper.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
require_relative '../lib/zookeeper/logger'
|
1
2
|
require_relative '../lib/zookeeper/common'
|
2
3
|
require_relative '../lib/zookeeper/constants'
|
3
4
|
require_relative 'zookeeper_c'
|
@@ -8,9 +9,10 @@ require_relative 'zookeeper_c'
|
|
8
9
|
# when we're garbage collected
|
9
10
|
module Zookeeper
|
10
11
|
class CZookeeper
|
11
|
-
include
|
12
|
-
include
|
13
|
-
include
|
12
|
+
include Forked
|
13
|
+
include Constants
|
14
|
+
include Exceptions
|
15
|
+
include Logger
|
14
16
|
|
15
17
|
DEFAULT_SESSION_TIMEOUT_MSEC = 10000
|
16
18
|
|
@@ -223,10 +225,6 @@ class CZookeeper
|
|
223
225
|
end
|
224
226
|
end
|
225
227
|
|
226
|
-
def logger
|
227
|
-
Zookeeper.logger
|
228
|
-
end
|
229
|
-
|
230
228
|
# called by underlying C code to signal we're running
|
231
229
|
def zkc_set_running_and_notify!
|
232
230
|
logger.debug { "#{self.class}##{__method__}" }
|
data/ext/zookeeper_base.rb
CHANGED
@@ -8,12 +8,13 @@ require 'forwardable'
|
|
8
8
|
module Zookeeper
|
9
9
|
class ZookeeperBase
|
10
10
|
extend Forwardable
|
11
|
-
include
|
12
|
-
include
|
13
|
-
include
|
14
|
-
include
|
15
|
-
include
|
16
|
-
include
|
11
|
+
include Forked
|
12
|
+
include Common # XXX: clean this up, no need to include *everything*
|
13
|
+
include Callbacks
|
14
|
+
include Constants
|
15
|
+
include Exceptions
|
16
|
+
include ACLs
|
17
|
+
include Logger
|
17
18
|
|
18
19
|
attr_accessor :original_pid
|
19
20
|
|
@@ -143,7 +144,8 @@ class ZookeeperBase
|
|
143
144
|
raise Exceptions::NotConnected unless connected?
|
144
145
|
if forked?
|
145
146
|
raise InheritedConnectionError, <<-EOS.gsub(/(?:^|\n)\s*/, ' ').strip
|
146
|
-
You tried to use a connection inherited from another process
|
147
|
+
You tried to use a connection inherited from another process
|
148
|
+
(original pid: #{original_pid}, your pid: #{Process.pid})
|
147
149
|
You need to call reopen() after forking
|
148
150
|
EOS
|
149
151
|
end
|
data/ext/zookeeper_lib.c
CHANGED
@@ -64,7 +64,7 @@ void atfork_child() {
|
|
64
64
|
// set up handlers to make sure the thread being forked holds the lock at the
|
65
65
|
// time the process is copied, then immediately unlock the mutex in both parent
|
66
66
|
// and children
|
67
|
-
pthread_atfork(atfork_prepare, atfork_parent, atfork_child)
|
67
|
+
/*pthread_atfork(atfork_prepare, atfork_parent, atfork_child);*/
|
68
68
|
|
69
69
|
|
70
70
|
void zkrb_enqueue(zkrb_queue_t *q, zkrb_event_t *elt) {
|
data/java/java_base.rb
CHANGED
@@ -16,11 +16,12 @@ module Zookeeper
|
|
16
16
|
# subclassed by the top-level Zookeeper class
|
17
17
|
class JavaBase
|
18
18
|
include Java
|
19
|
-
include
|
20
|
-
include
|
21
|
-
include
|
22
|
-
include
|
23
|
-
include
|
19
|
+
include Common
|
20
|
+
include Constants
|
21
|
+
include Callbacks
|
22
|
+
include Exceptions
|
23
|
+
include ACLs
|
24
|
+
include Logger
|
24
25
|
|
25
26
|
JZK = org.apache.zookeeper
|
26
27
|
JZKD = org.apache.zookeeper.data
|
@@ -64,16 +65,13 @@ class JavaBase
|
|
64
65
|
# @private
|
65
66
|
module JavaCB
|
66
67
|
class Callback
|
68
|
+
include Logger
|
69
|
+
|
67
70
|
attr_reader :req_id
|
68
71
|
|
69
72
|
def initialize(req_id)
|
70
73
|
@req_id = req_id
|
71
74
|
end
|
72
|
-
|
73
|
-
protected
|
74
|
-
def logger
|
75
|
-
Zookeeper.logger
|
76
|
-
end
|
77
75
|
end
|
78
76
|
|
79
77
|
class DataCallback < Callback
|
data/lib/zookeeper.rb
CHANGED
@@ -15,6 +15,7 @@ silence_warnings do
|
|
15
15
|
require 'backports'
|
16
16
|
end
|
17
17
|
|
18
|
+
require_relative 'zookeeper/logger'
|
18
19
|
require_relative 'zookeeper/forked'
|
19
20
|
require_relative 'zookeeper/latch'
|
20
21
|
require_relative 'zookeeper/acls'
|
@@ -33,7 +34,7 @@ module Zookeeper
|
|
33
34
|
include Constants
|
34
35
|
|
35
36
|
unless defined?(@@logger)
|
36
|
-
@@logger = Logger.new($stderr).tap { |l| l.level = ENV['ZOOKEEPER_DEBUG'] ? Logger::DEBUG : Logger::ERROR }
|
37
|
+
@@logger = ::Logger.new($stderr).tap { |l| l.level = ENV['ZOOKEEPER_DEBUG'] ? ::Logger::DEBUG : ::Logger::ERROR }
|
37
38
|
end
|
38
39
|
|
39
40
|
def self.logger
|
@@ -2,6 +2,7 @@ module Zookeeper
|
|
2
2
|
module ClientMethods
|
3
3
|
include Constants
|
4
4
|
include ACLs
|
5
|
+
include Logger
|
5
6
|
|
6
7
|
def reopen(timeout=10, watcher=nil)
|
7
8
|
warn "WARN: ZookeeperBase#reopen watcher argument is now ignored" if watcher
|
@@ -208,10 +209,6 @@ protected
|
|
208
209
|
super
|
209
210
|
end
|
210
211
|
|
211
|
-
def logger
|
212
|
-
Zookeeper.logger
|
213
|
-
end
|
214
|
-
|
215
212
|
def assert_valid_data_size!(data)
|
216
213
|
return if data.nil?
|
217
214
|
|
@@ -3,6 +3,7 @@ module Common
|
|
3
3
|
# Ceci n'est pas une pipe
|
4
4
|
class QueueWithPipe
|
5
5
|
extend Forwardable
|
6
|
+
include Logger
|
6
7
|
|
7
8
|
def_delegators :@queue, :clear
|
8
9
|
|
@@ -65,10 +66,6 @@ module Common
|
|
65
66
|
def clear_reads_on_pop?
|
66
67
|
@clear_reads_on_pop
|
67
68
|
end
|
68
|
-
|
69
|
-
def logger
|
70
|
-
Zookeeper.logger
|
71
|
-
end
|
72
69
|
end
|
73
70
|
end
|
74
71
|
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module Zookeeper
|
2
|
+
module Logger
|
3
|
+
def self.included(mod)
|
4
|
+
mod.extend(self)
|
5
|
+
end
|
6
|
+
|
7
|
+
def self.const_missing(sym)
|
8
|
+
return ::Logger.const_get(sym) if ::Logger.const_defined?(sym)
|
9
|
+
super
|
10
|
+
end
|
11
|
+
|
12
|
+
def self.new(*a, &b)
|
13
|
+
::Logger.new(*a, &b)
|
14
|
+
end
|
15
|
+
|
16
|
+
private
|
17
|
+
def logger
|
18
|
+
::Zookeeper.logger
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
data/lib/zookeeper/version.rb
CHANGED
@@ -0,0 +1,19 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
unless defined?(::JRUBY_VERSION)
|
4
|
+
describe Zookeeper::ZookeeperBase do
|
5
|
+
before do
|
6
|
+
@zk = described_class.new(Zookeeper.default_cnx_str)
|
7
|
+
end
|
8
|
+
|
9
|
+
after do
|
10
|
+
@zk.close unless @zk.closed?
|
11
|
+
end
|
12
|
+
|
13
|
+
it %[should have an original_pid assigned] do
|
14
|
+
@zk.original_pid.should == Process.pid
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zookeeper
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 29
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 1
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 1.0.
|
9
|
+
- 5
|
10
|
+
version: 1.0.5
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Phillip Pearson
|
@@ -20,7 +20,7 @@ autorequire:
|
|
20
20
|
bindir: bin
|
21
21
|
cert_chain: []
|
22
22
|
|
23
|
-
date: 2012-05-
|
23
|
+
date: 2012-05-11 00:00:00 Z
|
24
24
|
dependencies:
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: backports
|
@@ -54,6 +54,7 @@ extensions:
|
|
54
54
|
extra_rdoc_files: []
|
55
55
|
|
56
56
|
files:
|
57
|
+
- .ctags_paths
|
57
58
|
- .dotfiles/rvmrc
|
58
59
|
- .gitignore
|
59
60
|
- .gitmodules
|
@@ -95,6 +96,7 @@ files:
|
|
95
96
|
- lib/zookeeper/exceptions.rb
|
96
97
|
- lib/zookeeper/forked.rb
|
97
98
|
- lib/zookeeper/latch.rb
|
99
|
+
- lib/zookeeper/logger.rb
|
98
100
|
- lib/zookeeper/rake_tasks.rb
|
99
101
|
- lib/zookeeper/stat.rb
|
100
102
|
- lib/zookeeper/version.rb
|
@@ -105,6 +107,7 @@ files:
|
|
105
107
|
- spec/compatibilty_spec.rb
|
106
108
|
- spec/default_watcher_spec.rb
|
107
109
|
- spec/em_spec.rb
|
110
|
+
- spec/ext/zookeeper_base_spec.rb
|
108
111
|
- spec/fork_hook_specs.rb
|
109
112
|
- spec/forked_connection_spec.rb
|
110
113
|
- spec/latch_spec.rb
|
@@ -157,6 +160,7 @@ test_files:
|
|
157
160
|
- spec/compatibilty_spec.rb
|
158
161
|
- spec/default_watcher_spec.rb
|
159
162
|
- spec/em_spec.rb
|
163
|
+
- spec/ext/zookeeper_base_spec.rb
|
160
164
|
- spec/fork_hook_specs.rb
|
161
165
|
- spec/forked_connection_spec.rb
|
162
166
|
- spec/latch_spec.rb
|