Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
-
OpenSolaris 2008.11
Description
Rails app crashes after a random period of time when running on Thin on OpenSolaris. Error output by Thin is:
Assertion failed: nbytes > 0, file ed.cpp, line 622
Abort (core dumped)
Which indicates that the problem occurred within native code in the eventmachine gem.
The assertion checks that there are bytes available to be written on a call to eventmachine's Write(). At the time of the crash OutboundPages.size() = 0
OutboundPages is the deque used to queue pages of data for writing.
Stack trace:
core 'core' of 13659: /usr/ruby/1.8/bin/ruby /var/ruby/1.8/gem_home/bin/thin -e production s
fecb17c5 _lwp_kill (1, 6, 8034760, fec5a02e) + 15
fec5a03a raise (6, 0, 80347b0, fec315ea) + 22
fec3160a abort (65737341, 6f697472, 6166206e, 64656c69, 626e203a, 73657479) + f2
fec3185a _assert (feaa4c96, feaa4bf6, 26e, 0, 6d7a, a17edb8) + 82
fea9c2dd _ZN20ConnectionDescriptor18_WriteOutboundDataEv (a17ed88, 8038b0c, 8038b8c, fea9c548) + 391
fea9c575 _ZN20ConnectionDescriptor5WriteEv (a17ed88, fed3f000, 8038b10, fec4ae14, 2d, 9a5a744) + 3d
fea9ebe3 _ZN14EventMachine_t14_RunSelectOnceEv (9a5a720, bc00a, fecb0615, fea9ee91, 9a5a760, feab51b8) + 20b
fea9eead _ZN14EventMachine_t8_RunOnceEv (9a5a720, 8039234, 0, feaa18dd) + 29
feaa191e _ZN14EventMachine_t3RunEv (9a5a720, 480, 4166135, fea8eeba) + 4e
fea8ef2d evma_run_machine (0, 808a254, 80391dc, 80681fc, 839c594, 808a254) + 81
fea912ba _Z29t_run_machine_without_threadsm (839c594) + 16
080681fc rb_call0 (839c454, 839c594, 5161, 5161, 0, 0) + 998
08068dd2 rb_call (839c454, 839c594, 5161, 0, 0, 2) + 196
080627f9 rb_eval (839c594, 83b218c) + 19ed
08063241 rb_eval (839c594, 83b2628) + 2435
080686ca rb_call0 (839c454, 839c594, 1411, 1411, 0, 0) + e66
08068dd2 rb_call (839c454, 839c594, 1411, 0, 0, 0) + 196
08062c99 rb_eval (84281e8, 8425df8) + 1e8d
0806ea95 block_pass (84281e8, 8425e0c) + 3a1
080636c8 rb_eval (84281e8, 8425fd8) + 28bc
080686ca rb_call0 (8422414, 84281e8, 13c1, 13c1, 0, 0) + e66
08068dd2 rb_call (8422414, 84281e8, 13c1, 0, 0, 0) + 196
08062c99 rb_eval (842865c, 8280b88) + 1e8d
080686ca rb_call0 (827ccf4, 842865c, 13c1, 13c1, 0, 0) + e66
08068dd2 rb_call (827ccf4, 842865c, 13c1, 0, 0, 0) + 196
08062c99 rb_eval (8430104, 842ee1c) + 1e8d
080686ca rb_call0 (84286c0, 8430104, 13c1, 13c1, 0, 8041444) + e66
08068dd2 rb_call (84286c0, 8430104, 13c1, 0, 8041444, 1) + 196
08068fbc rb_f_send (1, 8041440, 8430104) + f4
0806820d rb_call0 (80c8bb0, 8430104, fd1, fd1, 1, 8041440) + 9a9
08068dd2 rb_call (80c8bb0, 8430104, fd1, 1, 8041440, 0) + 196
08062c99 rb_eval (8286cb8, 834ba90) + 1e8d
0806344a rb_eval (8286cb8, 834c2b0) + 263e
080686ca rb_call0 (8286114, 8286cb8, 6351, 6351, 0, 0) + e66
08068dd2 rb_call (8286114, 8286cb8, 6351, 0, 0, 2) + 196
080627f9 rb_eval (8286cb8, 834c508) + 19ed
080686ca rb_call0 (8286114, 8286cb8, 4ecf, 4ecf, 0, 0) + e66
08068dd2 rb_call (8286114, 8286cb8, 4ecf, 0, 0, 0) + 196
08062c99 rb_eval (80c78b4, 83d7978) + 1e8d
0805dfeb eval_node (80c78b4, 83d7978) + 3f
0806a819 rb_load (83d7ba8, 0) + 391
0806aaf4 rb_f_load (1, 80469c0, 80c78b4) + 48
0806820d rb_call0 (80c8bb0, 80c78b4, 25c1, 25c1, 1, 80469c0) + 9a9
08068dd2 rb_call (80c8bb0, 80c78b4, 25c1, 1, 80469c0, 1) + 196
08062a39 rb_eval (80c78b4, 80b761c) + 1c2d
0805dfeb eval_node (80c78b4, 80b761c) + 3f
0805e6d6 ruby_exec_internal (808a254, 80c8c50, 0, 0, 0, a00000) + d6
0805e74b ruby_exec (808a254, 8058cbe, 8047d2c, 8058cc6, feffb7e4, feffde70) + 27
0805e773 ruby_run (feffb7e4, feffde70, 0, 8047d2c, 8076d8d, feffb7e4) + 23
08058cc6 main (5, 8047d60, 8047d78) + 3a
08058bfe _start (5, 8047e1c, 8047e33, 8047e53, 8047e56, 8047e61) + 7a