celluloid-zmq 0.13.0 → 0.14.0.pre

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 5aa7a33713e31f7681439f95e04c5acac2a252bd
4
+ data.tar.gz: 2988a4aa5fc2c8742be28ab8387d6894637ae778
5
+ SHA512:
6
+ metadata.gz: c94c66cb85ae6f779dafa3673584dbfe36a722484b2bd8af93a7d6562d6eb9ec7a95c3be92ca84c5b967705ccd829ee61d014ff09dbbc8725ccb711896a0a6ff
7
+ data.tar.gz: c3d693c00a4201b8a0996726df5c7be1a9cbd25209072384c111b6d9574b8018d2bdd848612abc7cdf037b407e8ef4c911e00d1cfab2900d147f3fe41a28bda9
data/Gemfile CHANGED
@@ -1,7 +1,7 @@
1
1
  source 'http://rubygems.org'
2
2
 
3
- #gem 'celluloid', :git => 'git://github.com/celluloid/celluloid'
4
- #gem 'celluloid-io', :git => 'git://github.com/celluloid/celluloid-io'
3
+ gem 'coveralls', require: false
4
+ gem 'celluloid', github: 'celluloid/celluloid', branch: 'master'
5
5
 
6
6
  # Specify your gem's dependencies in celluloid-zmq.gemspec
7
7
  gemspec
data/README.md CHANGED
@@ -2,8 +2,8 @@
2
2
  =================
3
3
  [![Gem Version](https://badge.fury.io/rb/celluloid-zmq.png)](http://rubygems.org/gems/celluloid-zmq)
4
4
  [![Build Status](https://secure.travis-ci.org/celluloid/celluloid-zmq.png?branch=master)](http://travis-ci.org/celluloid/celluloid-zmq)
5
- [![Dependency Status](https://gemnasium.com/celluloid/celluloid-zmq.png)](https://gemnasium.com/celluloid/celluloid-zmq)
6
5
  [![Code Climate](https://codeclimate.com/github/celluloid/celluloid-zmq.png)](https://codeclimate.com/github/celluloid/celluloid-zmq)
6
+ [![Coverage Status](https://coveralls.io/repos/celluloid/celluloid-zmq/badge.png?branch=master)](https://coveralls.io/r/celluloid/celluloid-zmq)
7
7
 
8
8
  Celluloid::ZMQ provides Celluloid actors that can interact with [0MQ sockets][0mq].
9
9
  Underneath, it's built on the [ffi-rzmq][ffi-rzmq] library. Celluloid::ZMQ was
@@ -61,7 +61,7 @@ class Server
61
61
  end
62
62
 
63
63
  def run
64
- loop { handle_message! @socket.read }
64
+ loop { async.handle_message @socket.read }
65
65
  end
66
66
 
67
67
  def handle_message(message)
@@ -95,8 +95,10 @@ addr = 'tcp://127.0.0.1:3435'
95
95
  server = Server.new(addr)
96
96
  client = Client.new(addr)
97
97
 
98
- server.run!
98
+ server.async.run
99
99
  client.write('hi')
100
+
101
+ sleep
100
102
  ```
101
103
 
102
104
  Copyright
@@ -12,7 +12,6 @@ Gem::Specification.new do |gem|
12
12
  gem.version = Celluloid::ZMQ::VERSION
13
13
 
14
14
  gem.add_dependency "celluloid", ">= 0.13.0"
15
- gem.add_dependency "celluloid-io", ">= 0.13.0"
16
15
  gem.add_dependency "ffi"
17
16
  gem.add_dependency "ffi-rzmq"
18
17
 
@@ -0,0 +1,70 @@
1
+ require 'celluloid/zmq'
2
+
3
+ class PublishSubscribe
4
+ include Celluloid::ZMQ
5
+
6
+ def run
7
+ link = "tcp://127.0.0.1:5555"
8
+
9
+ s1 = PubSocket.new
10
+ s2 = SubSocket.new
11
+ s3 = SubSocket.new
12
+ s4 = SubSocket.new
13
+ s5 = SubSocket.new
14
+
15
+ s1.linger = 100
16
+ s2.subscribe('') # receive all
17
+ s3.subscribe('animals') # receive any starting with this string
18
+ s4.subscribe('animals.dog')
19
+ s5.subscribe('animals.cat')
20
+
21
+ s1.bind(link)
22
+ s2.connect(link)
23
+ s3.connect(link)
24
+ s4.connect(link)
25
+ s5.connect(link)
26
+
27
+ sleep 1
28
+
29
+ topic = "animals.dog"
30
+ payload = "Animal crackers!"
31
+
32
+ s1.identity = "publisher-A"
33
+ puts "sending"
34
+ # use the new multi-part messaging support to
35
+ # automatically separate the topic from the body
36
+ s1.write(topic, payload, s1.identity)
37
+
38
+ topic = ''
39
+ s2.read(topic)
40
+
41
+ body = ''
42
+ s2.read(body) if s2.more_parts?
43
+
44
+ identity = ''
45
+ s2.read(identity) if s2.more_parts?
46
+ puts "s2 received topic [#{topic}], body [#{body}], identity [#{identity}]"
47
+
48
+
49
+ topic = ''
50
+ s3.read(topic)
51
+
52
+ body = ''
53
+ s3.read(body) if s3.more_parts?
54
+ puts "s3 received topic [#{topic}], body [#{body}]"
55
+
56
+ topic = ''
57
+ s4.read(topic)
58
+
59
+ body = ''
60
+ s4.read(body) if s4.more_parts?
61
+ puts "s4 received topic [#{topic}], body [#{body}]"
62
+
63
+ s5_string = ''
64
+ s5.read(s5_string)
65
+
66
+ # we will never get here
67
+ end
68
+ end
69
+
70
+ PublishSubscribe.new.run
data/lib/celluloid/zmq.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  require 'ffi-rzmq'
2
2
 
3
- require 'celluloid/io'
3
+ require 'celluloid'
4
4
  require 'celluloid/zmq/mailbox'
5
5
  require 'celluloid/zmq/reactor'
6
6
  require 'celluloid/zmq/sockets'
@@ -31,9 +31,33 @@ module Celluloid
31
31
  end
32
32
  end
33
33
 
34
- extend Forwardable
34
+ # Is this a Celluloid::ZMQ evented actor?
35
+ def self.evented?
36
+ actor = Thread.current[:celluloid_actor]
37
+ actor.mailbox.is_a?(Celluloid::ZMQ::Mailbox)
38
+ end
39
+
40
+ def wait_readable(socket)
41
+ if ZMQ.evented?
42
+ mailbox = Thread.current[:celluloid_mailbox]
43
+ mailbox.reactor.wait_readable(socket)
44
+ else
45
+ raise ArgumentError, "unable to wait for ZMQ sockets outside the event loop"
46
+ end
47
+ nil
48
+ end
49
+ module_function :wait_readable
50
+
51
+ def wait_writable(socket)
52
+ if ZMQ.evented?
53
+ mailbox = Thread.current[:celluloid_mailbox]
54
+ mailbox.reactor.wait_writable(socket)
55
+ else
56
+ raise ArgumentError, "unable to wait for ZMQ sockets outside the event loop"
57
+ end
58
+ nil
59
+ end
60
+ module_function :wait_writable
35
61
 
36
- # Wait for the given IO object to become readable/writeable
37
- def_delegators 'current_actor.mailbox.reactor', :wait_readable, :wait_writeable
38
62
  end
39
63
  end
@@ -1,11 +1,9 @@
1
- require 'celluloid/io'
2
-
3
1
  module Celluloid
4
2
  module ZMQ
5
3
  # Replacement mailbox for Celluloid::ZMQ actors
6
- class Mailbox < Celluloid::IO::Mailbox
4
+ class Mailbox < Celluloid::EventedMailbox
7
5
  def initialize
8
- super Celluloid::ZMQ::Reactor.new
6
+ super(Reactor)
9
7
  end
10
8
  end
11
9
  end
@@ -25,8 +25,8 @@ module Celluloid
25
25
  monitor_zmq socket, @readers, ::ZMQ::POLLIN
26
26
  end
27
27
 
28
- # Wait for the given ZMQ socket to become writeable
29
- def wait_writeable(socket)
28
+ # Wait for the given ZMQ socket to become writable
29
+ def wait_writable(socket)
30
30
  monitor_zmq socket, @writers, ::ZMQ::POLLOUT
31
31
  end
32
32
 
@@ -25,6 +25,14 @@ module Celluloid
25
25
  end
26
26
  end
27
27
 
28
+ def identity=(value)
29
+ @socket.identity = value
30
+ end
31
+
32
+ def identity
33
+ @socket.identity
34
+ end
35
+
28
36
  # Bind to the given 0MQ address
29
37
  # Address should be in the form: tcp://1.2.3.4:5678/
30
38
  def bind(addr)
@@ -38,15 +46,6 @@ module Celluloid
38
46
  @socket.close
39
47
  end
40
48
 
41
- # Does the 0MQ socket support evented operation?
42
- def evented?
43
- actor = Thread.current[:celluloid_actor]
44
- return unless actor
45
-
46
- mailbox = actor.mailbox
47
- mailbox.is_a?(Celluloid::IO::Mailbox) && mailbox.reactor.is_a?(Celluloid::ZMQ::Reactor)
48
- end
49
-
50
49
  # Hide ffi-rzmq internals
51
50
  alias_method :inspect, :to_s
52
51
  end
@@ -68,7 +67,7 @@ module Celluloid
68
67
 
69
68
  # Read a message from the socket
70
69
  def read(buffer = '')
71
- Celluloid.current_actor.wait_readable(@socket) if evented?
70
+ ZMQ.wait_readable(@socket) if ZMQ.evented?
72
71
 
73
72
  unless ::ZMQ::Util.resultcode_ok? @socket.recv_string buffer
74
73
  raise IOError, "error receiving ZMQ string: #{::ZMQ::Util.error_string}"
@@ -1,5 +1,5 @@
1
1
  module Celluloid
2
2
  module ZMQ
3
- VERSION = "0.13.0"
3
+ VERSION = "0.14.0.pre"
4
4
  end
5
5
  end
@@ -0,0 +1,6 @@
1
+ require 'spec_helper'
2
+ require 'celluloid/rspec'
3
+
4
+ describe Celluloid::ZMQ::Mailbox do
5
+ it_behaves_like "a Celluloid Mailbox"
6
+ end
data/spec/spec_helper.rb CHANGED
@@ -1,3 +1,6 @@
1
+ require 'coveralls'
2
+ Coveralls.wear!
3
+
1
4
  require 'bundler/setup'
2
5
  require 'celluloid/zmq'
3
6
 
metadata CHANGED
@@ -1,110 +1,83 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: celluloid-zmq
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.0
5
- prerelease:
4
+ version: 0.14.0.pre
6
5
  platform: ruby
7
6
  authors:
8
7
  - Tony Arcieri
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-03-19 00:00:00.000000000 Z
11
+ date: 2013-05-01 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: celluloid
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - '>='
20
18
  - !ruby/object:Gem::Version
21
19
  version: 0.13.0
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
28
- - !ruby/object:Gem::Version
29
- version: 0.13.0
30
- - !ruby/object:Gem::Dependency
31
- name: celluloid-io
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ! '>='
36
- - !ruby/object:Gem::Version
37
- version: 0.13.0
38
- type: :runtime
39
- prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ! '>='
24
+ - - '>='
44
25
  - !ruby/object:Gem::Version
45
26
  version: 0.13.0
46
27
  - !ruby/object:Gem::Dependency
47
28
  name: ffi
48
29
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
30
  requirements:
51
- - - ! '>='
31
+ - - '>='
52
32
  - !ruby/object:Gem::Version
53
33
  version: '0'
54
34
  type: :runtime
55
35
  prerelease: false
56
36
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
37
  requirements:
59
- - - ! '>='
38
+ - - '>='
60
39
  - !ruby/object:Gem::Version
61
40
  version: '0'
62
41
  - !ruby/object:Gem::Dependency
63
42
  name: ffi-rzmq
64
43
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
44
  requirements:
67
- - - ! '>='
45
+ - - '>='
68
46
  - !ruby/object:Gem::Version
69
47
  version: '0'
70
48
  type: :runtime
71
49
  prerelease: false
72
50
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
51
  requirements:
75
- - - ! '>='
52
+ - - '>='
76
53
  - !ruby/object:Gem::Version
77
54
  version: '0'
78
55
  - !ruby/object:Gem::Dependency
79
56
  name: rake
80
57
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
58
  requirements:
83
- - - ! '>='
59
+ - - '>='
84
60
  - !ruby/object:Gem::Version
85
61
  version: '0'
86
62
  type: :development
87
63
  prerelease: false
88
64
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
65
  requirements:
91
- - - ! '>='
66
+ - - '>='
92
67
  - !ruby/object:Gem::Version
93
68
  version: '0'
94
69
  - !ruby/object:Gem::Dependency
95
70
  name: rspec
96
71
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
72
  requirements:
99
- - - ! '>='
73
+ - - '>='
100
74
  - !ruby/object:Gem::Version
101
75
  version: '0'
102
76
  type: :development
103
77
  prerelease: false
104
78
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
79
  requirements:
107
- - - ! '>='
80
+ - - '>='
108
81
  - !ruby/object:Gem::Version
109
82
  version: '0'
110
83
  description: Celluloid bindings to the ffi-rzmq library
@@ -116,6 +89,7 @@ extra_rdoc_files: []
116
89
  files:
117
90
  - celluloid-zmq.gemspec
118
91
  - CHANGES.md
92
+ - examples/publish_subscribe.rb
119
93
  - Gemfile
120
94
  - lib/celluloid/zmq/mailbox.rb
121
95
  - lib/celluloid/zmq/reactor.rb
@@ -124,41 +98,39 @@ files:
124
98
  - lib/celluloid/zmq/waker.rb
125
99
  - lib/celluloid/zmq.rb
126
100
  - LICENSE.txt
127
- - log/test.log
128
101
  - logo.png
129
- - pkg/celluloid-zmq-0.13.0.pre.gem
130
102
  - Rakefile
131
103
  - README.md
132
104
  - spec/celluloid/zmq/actor_spec.rb
105
+ - spec/celluloid/zmq/mailbox_spec.rb
133
106
  - spec/spec_helper.rb
134
107
  - .gitignore
135
108
  homepage: http://github.com/celluloid/celluloid-zmq
136
109
  licenses: []
110
+ metadata: {}
137
111
  post_install_message:
138
112
  rdoc_options: []
139
113
  require_paths:
140
114
  - lib
141
115
  required_ruby_version: !ruby/object:Gem::Requirement
142
- none: false
143
116
  requirements:
144
- - - ! '>='
117
+ - - '>='
145
118
  - !ruby/object:Gem::Version
146
119
  version: '0'
147
120
  required_rubygems_version: !ruby/object:Gem::Requirement
148
- none: false
149
121
  requirements:
150
- - - ! '>='
122
+ - - '>'
151
123
  - !ruby/object:Gem::Version
152
- version: '0'
124
+ version: 1.3.1
153
125
  requirements: []
154
126
  rubyforge_project:
155
- rubygems_version: 1.8.23
127
+ rubygems_version: 2.0.3
156
128
  signing_key:
157
- specification_version: 3
129
+ specification_version: 4
158
130
  summary: Celluloid::ZMQ provides concurrent Celluloid actors that can listen for 0MQ
159
131
  events
160
132
  test_files:
161
133
  - spec/celluloid/zmq/actor_spec.rb
134
+ - spec/celluloid/zmq/mailbox_spec.rb
162
135
  - spec/spec_helper.rb
163
136
  - .gitignore
164
- has_rdoc:
data/log/test.log DELETED
@@ -1,198 +0,0 @@
1
- E, [2012-12-19T01:01:20.993664 #85808] ERROR -- : #<Class:0x007f9971a06ee8> crashed!
2
- ExampleCrash: the spec purposely crashed me :(
3
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
4
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
5
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
6
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
7
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
8
- E, [2012-12-19T01:01:20.998087 #85808] ERROR -- : #<Class:0x007f99719f4dd8> crashed!
9
- ExampleCrash: the spec purposely crashed me :(
10
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
11
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
12
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
13
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
14
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
15
- E, [2012-12-19T01:01:21.054224 #85808] ERROR -- : #<Class:0x007f9971aab448> crashed!
16
- TypeError: Exception object/String expected, but Fixnum received
17
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid.rb:314:in `abort'
18
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:44:in `crash_with_abort_raw'
19
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
20
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
21
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
22
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
23
- E, [2012-12-19T01:01:21.122093 #85808] ERROR -- : #<Class:0x007f997194b7d8> crashed!
24
- ExampleCrash: the spec purposely crashed me :(
25
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
26
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
27
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
28
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
29
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
30
- E, [2012-12-19T01:01:21.233064 #85808] ERROR -- : #<Class:0x007f9971acf528> crashed!
31
- ExampleCrash: the spec purposely crashed me :(
32
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
33
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
34
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
35
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
36
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
37
- E, [2012-12-19T01:01:21.356557 #85808] ERROR -- : #<Class:0x007f9971b96e98> crashed!
38
- ExampleCrash: the spec purposely crashed me :(
39
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
40
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
41
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
42
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
43
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
44
- D, [2012-12-19T01:01:25.445824 #85808] DEBUG -- : Terminating 67 actors...
45
- E, [2012-12-19T01:01:25.467635 #85808] ERROR -- : #<Class:0x007f9971b96c18>: CLEANUP CRASHED!
46
- Celluloid::MailboxError: dead recipient
47
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-io-b6acbc2ceaf2/lib/celluloid/io/mailbox.rb:32:in `rescue in <<'
48
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-io-b6acbc2ceaf2/lib/celluloid/io/mailbox.rb:35:in `<<'
49
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:32:in `block in send_event'
50
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:27:in `block in each'
51
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:27:in `each'
52
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:27:in `each'
53
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:32:in `send_event'
54
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:401:in `cleanup'
55
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:373:in `shutdown'
56
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:207:in `run'
57
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:184:in `block in initialize'
58
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/thread_handle.rb:17:in `block in initialize'
59
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/internal_pool.rb:55:in `call'
60
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/internal_pool.rb:55:in `block in create'
61
- D, [2012-12-19T01:01:25.474351 #85808] DEBUG -- : Shutdown completed cleanly
62
- E, [2012-12-19T01:01:38.130683 #85833] ERROR -- : #<Class:0x007fe449ad5ea0> crashed!
63
- ExampleCrash: the spec purposely crashed me :(
64
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
65
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
66
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
67
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
68
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
69
- E, [2012-12-19T01:01:38.134696 #85833] ERROR -- : #<Class:0x007fe449ac56e0> crashed!
70
- ExampleCrash: the spec purposely crashed me :(
71
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
72
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
73
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
74
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
75
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
76
- E, [2012-12-19T01:01:38.191106 #85833] ERROR -- : #<Class:0x007fe449b6c738> crashed!
77
- TypeError: Exception object/String expected, but Fixnum received
78
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid.rb:314:in `abort'
79
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:44:in `crash_with_abort_raw'
80
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
81
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
82
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
83
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
84
- E, [2012-12-19T01:01:38.258936 #85833] ERROR -- : #<Class:0x007fe449a4a530> crashed!
85
- ExampleCrash: the spec purposely crashed me :(
86
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
87
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
88
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
89
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
90
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
91
- E, [2012-12-19T01:01:38.370524 #85833] ERROR -- : #<Class:0x007fe449b79780> crashed!
92
- ExampleCrash: the spec purposely crashed me :(
93
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
94
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
95
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
96
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
97
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
98
- E, [2012-12-19T01:01:38.494373 #85833] ERROR -- : #<Class:0x007fe449c58ea8> crashed!
99
- ExampleCrash: the spec purposely crashed me :(
100
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
101
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
102
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
103
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
104
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
105
- D, [2012-12-19T01:01:42.580985 #85833] DEBUG -- : Terminating 67 actors...
106
- E, [2012-12-19T01:01:42.605059 #85833] ERROR -- : #<Class:0x007fe449ad65f8>: CLEANUP CRASHED!
107
- Celluloid::MailboxError: dead recipient
108
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-io-b6acbc2ceaf2/lib/celluloid/io/mailbox.rb:32:in `rescue in <<'
109
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-io-b6acbc2ceaf2/lib/celluloid/io/mailbox.rb:35:in `<<'
110
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:32:in `block in send_event'
111
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:27:in `block in each'
112
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:27:in `each'
113
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:27:in `each'
114
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:32:in `send_event'
115
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:401:in `cleanup'
116
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:373:in `shutdown'
117
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:207:in `run'
118
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:184:in `block in initialize'
119
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/thread_handle.rb:17:in `block in initialize'
120
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/internal_pool.rb:55:in `call'
121
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/internal_pool.rb:55:in `block in create'
122
- D, [2012-12-19T01:01:42.610047 #85833] DEBUG -- : Shutdown completed cleanly
123
- E, [2013-02-27T23:29:42.558169 #64860] ERROR -- : #<Class:0x007fe15a0df848> crashed!
124
- ExampleCrash: the spec purposely crashed me :(
125
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/example_actor_class.rb:30:in `crash'
126
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
127
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
128
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
129
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
130
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
131
- E, [2013-02-27T23:29:42.567584 #64860] ERROR -- : ExampleReceiver crashed!
132
- ExampleCrash: the spec purposely crashed me :(
133
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/actor_examples.rb:199:in `receiver_method'
134
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
135
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
136
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
137
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
138
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
139
- E, [2013-02-27T23:29:42.567914 #64860] ERROR -- : ExampleCaller crashed!
140
- ExampleCrash: the spec purposely crashed me :(
141
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/actor_examples.rb:199:in `receiver_method'
142
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
143
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
144
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
145
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
146
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
147
- (celluloid):0:in `remote procedure call'
148
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:70:in `call'
149
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/legacy.rb:14:in `method_missing'
150
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/actor_examples.rb:207:in `caller_method'
151
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
152
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
153
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
154
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
155
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
156
- E, [2013-02-27T23:29:42.569918 #64860] ERROR -- : #<Class:0x007fe1589b3e80> crashed!
157
- ExampleCrash: the spec purposely crashed me :(
158
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/example_actor_class.rb:30:in `crash'
159
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
160
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
161
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
162
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
163
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
164
- E, [2013-02-27T23:29:42.575079 #64860] ERROR -- : #<Class:0x007fe15a03eee8> crashed!
165
- TypeError: Exception object/String expected, but Fixnum received
166
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid.rb:278:in `abort'
167
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/example_actor_class.rb:40:in `crash_with_abort_raw'
168
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
169
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
170
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
171
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
172
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
173
- E, [2013-02-27T23:29:42.619798 #64860] ERROR -- : #<Class:0x007fe15a120410> crashed!
174
- ExampleCrash: the spec purposely crashed me :(
175
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/example_actor_class.rb:30:in `crash'
176
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
177
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
178
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
179
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
180
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
181
- E, [2013-02-27T23:29:42.728341 #64860] ERROR -- : #<Class:0x007fe15894dc70> crashed!
182
- ExampleCrash: the spec purposely crashed me :(
183
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/example_actor_class.rb:30:in `crash'
184
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
185
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
186
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
187
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
188
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
189
- E, [2013-02-27T23:29:42.841919 #64860] ERROR -- : #<Class:0x007fe15a0f03c8> crashed!
190
- ExampleCrash: the spec purposely crashed me :(
191
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/example_actor_class.rb:30:in `crash'
192
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
193
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
194
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
195
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
196
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
197
- D, [2013-02-27T23:29:46.885001 #64860] DEBUG -- : Terminating 68 actors...
198
- D, [2013-02-27T23:29:46.897828 #64860] DEBUG -- : Shutdown completed cleanly