zk 1.3.0 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -63,6 +63,12 @@ In addition to all of that, I would like to think that the public API the ZK::Cl
63
63
 
64
64
  ## NEWS ##
65
65
 
66
+ ### v1.3.1 ###
67
+
68
+ * [fix a bug][bug 1.3.1] where a forked client would not have its 'outstanding watches' cleared, so some events would never be delivered
69
+
70
+ [bug 1.3.1]: https://github.com/slyphon/zk/compare/release/1.3.0...9f68cee958fdaad8d32b6d042bf0a2c9ab5ec9b0
71
+
66
72
  ### v1.3.0 ###
67
73
 
68
74
  Phusion Passenger and Unicorn users are encouraged to upgrade!
@@ -1,4 +1,19 @@
1
1
  This file notes feature differences and bugfixes contained between releases.
2
+ ### v1.3.1 ###
3
+
4
+ * [fix a bug][bug 1.3.1] where a forked client would not have its 'outstanding watches' cleared, so some events would never be delivered
5
+
6
+ [bug 1.3.1]: https://github.com/slyphon/zk/compare/release/1.3.0...9f68cee958fdaad8d32b6d042bf0a2c9ab5ec9b0
7
+
8
+ ### v1.3.0 ###
9
+
10
+ Phusion Passenger and Unicorn users are encouraged to upgrade!
11
+
12
+ * __fork()__: ZK should now work reliably after a fork() if you call `reopen()` ASAP in the child process (before continuing any ZK work). Additionally, your event-handler (blocks set up with `zk.register`) will still work in the child. You will have to make calls like `zk.stat(path, :watch => true)` to tell ZooKeeper to notify you of events (as the child will have a new session), but everything should work.
13
+
14
+ * See the fork-handling documentation [on the wiki](http://github.com/slyphon/zk/wiki/Forking).
15
+
16
+
2
17
  ### v1.2.0 ###
3
18
 
4
19
  You are __STRONGLY ENCOURAGED__ to go and look at the [CHANGELOG](http://git.io/tPbNBw) from the zookeeper 1.0.0 release
@@ -54,7 +54,9 @@ module ZK
54
54
  def reopen_after_fork!
55
55
  logger.debug { "#{self.class}##{__method__} reopening callbacks" }
56
56
  @mutex = Monitor.new
57
+ # XXX: need to test this w/ actor-style callbacks
57
58
  @callbacks.values.flatten.each { |cb| cb.reopen_after_fork! if cb.respond_to?(:reopen_after_fork!) }
59
+ @outstanding_watches.values.each { |set| set.clear }
58
60
  nil
59
61
  end
60
62
 
@@ -1,3 +1,3 @@
1
1
  module ZK
2
- VERSION = "1.3.0"
2
+ VERSION = "1.3.1"
3
3
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zk
3
3
  version: !ruby/object:Gem::Version
4
- hash: 27
4
+ hash: 25
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 3
9
- - 0
10
- version: 1.3.0
9
+ - 1
10
+ version: 1.3.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - Jonathan D. Simms