CouchDB 1.6.1 SSL error on Raspbian

2019-08-10 08:16发布

问题:

I am trying to setup SSL in CouchDB 1.6.1 on Raspbian and I get that :

** {badarg,[{ets,select_delete,
             [undefined,[{{{undefined,'_','_'},'_'},[],[true]}]],
             []},
        {ets,match_delete,2,[{file,"ets.erl"},{line,655}]},
        {ssl_pkix_db,remove_certs,2,[{file,"ssl_pkix_db.erl"},{line,221}]},
        {ssl_connection,terminate,3,
                        [{file,"ssl_connection.erl"},{line,934}]},
        {tls_connection,terminate,3,
                        [{file,"tls_connection.erl"},{line,326}]},
        {gen_fsm,terminate,7,[{file,"gen_fsm.erl"},{line,595}]},
        {gen_fsm,handle_msg,7,[{file,"gen_fsm.erl"},{line,517}]},
        {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,237}]}]}

My version of erlang is Erlang/OTP 17 [erts-6.2].

My local.ini file contains :

httpsd = {couch_httpd, start_link, [https]}

[ssl]
port = 6984
cert_file = /etc/couchdb/cert/couchdb.crt
key_file = /etc/couchdb/cert/couchdb.key

Http works fine. Any idea?

Cheers.

回答1:

This looks like the crash fixed by this pull request, merged into Erlang/OTP 18.2.

To the best of my knowledge, the crash itself is harmless: it occurs during connection termination, because the code is trying to clean up something that never was set up. However, it might draw your attention from other errors happening before it, such as incorrect path to key / certificate files.