hackmdio/codimd

CodiMD fails to start with existing unix socket file

Open

#1,024 创建于 2018年10月26日

在 GitHub 查看
 (4 评论) (0 反应) (0 负责人)JavaScript (8,949 star) (1,038 fork)batch import
bughelp wanted

描述

When starting CodiMD the first time, it creates the Unix socket (file), but leaves it on shutdown. The second time I start CodiMD, it fails with message=listen EADDRINUSE /run/codimd/socket, stack=Error: listen EADDRINUSE /run/codimd/socket. It would be helpful when CodiMD could use an existing socket, because I could set the permissions of the socket and change ownership, before starting CodiMD.

    at Object._errnoException (util.js:1022:11)
    at _exceptionWithHostPort (util.js:1044:20)
    at Server.setupListenHandle [as _listen2] (net.js:1350:19)
    at listenInCluster (net.js:1408:12)
    at Server.listen (net.js:1503:5)
    at startListen (/srv/www/n.jo-so.de/app.js:221:12)
    at /srv/www/n.jo-so.de/app.js:234:47
    at /srv/www/n.jo-so.de/lib/models/revision.js:167:20
    at Model.<anonymous> (/srv/www/n.jo-so.de/lib/models/revision.js:200:41)
    at Model.tryCatcher (/srv/www/n.jo-so.de/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/srv/www/n.jo-so.de/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/srv/www/n.jo-so.de/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromise0 (/srv/www/n.jo-so.de/node_modules/bluebird/js/release/promise.js:614:10)
    at Promise._settlePromises (/srv/www/n.jo-so.de/node_modules/bluebird/js/release/promise.js:694:18)
    at _drainQueueStep (/srv/www/n.jo-so.de/node_modules/bluebird/js/release/async.js:138:12)
    at _drainQueue (/srv/www/n.jo-so.de/node_modules/bluebird/js/release/async.js:131:9), code=EADDRINUSE, errno=EADDRINUSE, syscall=listen, address=/run/codimd/socket, port=-1

@ahihi, please have a look.

贡献者指南