Назад | Перейти на главную страницу

CouchDB вылетает при запуске, когда в пути к файлу конфигурации есть пробелы

Я надеюсь запустить CouchDB в качестве агента запуска для каждого пользователя в OS X. Я использую папку coucdbx-core из CouchDB Server.app в качестве основы для развертывания CouchDB.

Я бы хотел, чтобы у каждого пользователя был свой собственный экземпляр couch (на другом порту), что потребовало бы отдельных файлов конфигурации для каждого экземпляра. Логичное место для размещения этих файлов - в ~/Library/Application Support/ для каждого пользователя. Я могу поместить весь дистрибутив в ~/Library/Application Support/my-app/coucdbx, и поместите .ini в ~/Library/Application Support/my-app/local.ini. Запуск couchdb как bin/couchdb -a ../local.ini (из ~/Library/Application Support/my-app/coucdbx) прекрасно работает. Но я хотел бы сохранить каждому пользователю ~ 50 МБ couchdbx и установить couchdbx-core в общем месте (например, в пакете .app моего приложения). Когда я это делаю, путь к файлу конфигурации для каждого пользователя содержит пробел, и при запуске CouchDB появляется следующая ошибка:

$ bin/couchdb -n -a ~/Library/Application\ Support/us.physion.ovation/default.ini 
{"init terminating in do_boot",{{badmatch,{error,{bad_return,{{couch_app,start,[normal,["/Users/hs/prj/build-couchdb/build/etc/couchdb/default.ini","/Users/hs/prj/build-couchdb/build/etc/couchdb/local.ini"]]},{'EXIT',{{badmatch,{error,{error,enoent}}},[{couch_server_sup,start_server,1,[{file,"/Users/hs/prj/build-couchdb/dependencies/couchdb/src/couchdb/couch_server_sup.erl"},{line,56}]},{application_master,start_it_old,4,[{file,"application_master.erl"},{line,274}]}]}}}}}},[{couch,start,0,[{file,"/Users/hs/prj/build-couchdb/dependencies/couchdb/src/couchdb/couch.erl"},{line,18}]},{init,start_it,1,[]},{init,start_em,1,[]}]}}

Есть ли способ предоставить файл конфигурации в командной строке, если путь к этому файлу конфигурации включает пробелы? Несмотря на все мои усилия в архивах списков рассылки, вики и Google, я не смог найти решения или окончательного «это не может работать». Любая помощь очень ценится.

Йенс Альфке отвечает на users@couchdb.apache.org:

Я нашел другие места в CouchDB или Erlang, в которых были проблемы с пробелами в путях, поэтому я не удивлюсь, если там обнаружится ошибка.