[erlang-bugs] OTP ssl server death

Lev Walkin <>
Thu Jun 5 12:09:05 CEST 2008


Hello,

My erl-5.6.2 system dies with ssl server failure on FreeBSD system
(which is known to produce certain error-codes like EPIPE quite unlike
linux or ones):


=================================================================
esock: Got connect request while PASSIVE

=ERROR REPORT==== 2-Jun-2008::23:58:14 ===
** Generic server ssl_server terminating
** Last message in was {'EXIT',#Port<0.200>,epipe}
** When Server state == {st,#Port<0.200>,36930,false,
                             [{5,<0.112.0>,[]}],
                             [{5,<0.21926.1528>,
                               {<0.21926.1528>,#Ref<0.0.430.130623>}}],
                             60195,59,"OpenSSL 0.9.8g 19 Oct 2007",
                             "OpenSSL 0.9.8g 19 Oct 2007",

"DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA:AES256-SHA:DHE-RSA-CAMELLIA256-SHA:DHE-DSS-CAMELLIA2
6-SHA:CAMELLIA256-SHA:EDH-RSA-DES-CBC3-SHA:EDH-DSS-DES-CBC3-SHA:DES-CBC3-SHA:DES-CBC3-MD5:DHE-RSA-AES128-SHA:DHE-DSS-AE
128-SHA:AES128-SHA:DHE-RSA-CAMELLIA128-SHA:DHE-DSS-CAMELLIA128-SHA:CAMELLIA128-SHA:IDEA-CBC-SHA:IDEA-CBC-MD5:RC2-CBC-MD
:RC4-SHA:RC4-MD5:RC4-MD5:EDH-RSA-DES-CBC-SHA:EDH-DSS-DES-CBC-SHA:DES-CBC-SHA:DES-CBC-MD5:EXP-EDH-RSA-DES-CBC-SHA:EXP-ED
-DSS-DES-CBC-SHA:EXP-DES-CBC-SHA:EXP-RC2-CBC-MD5:EXP-RC2-CBC-MD5:EXP-RC4-MD5:EXP-RC4-MD5"}
** Reason for termination ==
** epipe

=CRASH REPORT==== 2-Jun-2008::23:58:14 ===
   crasher:
     pid: <0.111.0>
     registered_name: ssl_server
     exception exit: epipe
       in function  gen_server:terminate/6
     initial call: gen:init_it(gen_server,<0.44.0>,<0.44.0>,
                               {local,ssl_server},
                               ssl_server,[],[])
     ancestors: [ssl_sup,<0.43.0>]
     messages: []
     links: [<0.112.0>,<0.21926.1528>,<0.44.0>]
     dictionary: []
     trap_exit: true
     status: running
     heap_size: 4181
     stack_size: 23
     reductions: 647269
   neighbours:

=SUPERVISOR REPORT==== 2-Jun-2008::23:58:14 ===
      Supervisor: {local,ssl_sup}
      Context:    child_terminated
      Reason:     epipe
      Offender:   [{pid,<0.111.0>},
                   {name,ssl_server},
                   {mfa,{ssl_server,start_link,[]}},
                   {restart_type,permanent},
                   {shutdown,2000},
                   {child_type,worker}]


=ERROR REPORT==== 2-Jun-2008::23:58:14 ===
** Generic server <0.112.0> terminating
** Last message in was {'EXIT',<0.111.0>,epipe}
** When Server state == {st,listener,<0.111.0>,<0.110.0>,<0.110.0>,5,false,
                             [{mode,binary},
                              {ip,{0,0,0,0}},
                              {packet,http},
                              {active,false},
                              {nodelay,false},
                              {backlog,128},
                              {keyfile,"/key.pem"},
                              {certfile,"/cert.pem"},
                              {cacertfile,"/cert.pem"},
                              {verify,0},
                              {password,"jskit"},
                              {ciphers,"MEDIUM"},
                              {depth,1}],
                             {sslsocket,5,<0.112.0>},
                             nil,nil,open,false,false}
** Reason for termination ==
** epipe

=CRASH REPORT==== 2-Jun-2008::23:58:14 ===
   crasher:
     pid: <0.112.0>
     registered_name: []
     exception exit: epipe
       in function  gen_server:terminate/6
     initial call: gen:init_it(gen_server,<0.45.0>,<0.45.0>,ssl_broker,
                               [<0.110.0>,listener],
                               [])
     ancestors: [ssl_broker_sup,ssl_sup,<0.43.0>]
     messages: []
     links: [<0.110.0>,<0.45.0>]
     dictionary: []
     trap_exit: true
     status: running
     heap_size: 610
     stack_size: 23
     reductions: 1222163
   neighbours:

=ERROR REPORT==== 2-Jun-2008::23:58:14 ===
yaws: Failed to accept - terminating: {error,epipe}

==============================================================

...and then YAWS fails in flames.


Any suggestions and/or pointers? This happens from time to time
on my machines, but not consistently reproducible.


-- 
Lev Walkin





More information about the erlang-bugs mailing list