【问题标题】:CouchDB installs fine for everything except execution of views on win7 x64除了在 win7 x64 上执行视图之外,CouchDB 可以正常安装
【发布时间】:2013-11-09 10:09:41
【问题描述】:
  • 使用 setup-couchdb-1.4.0_R16B01.exe 在 Windows 7 x64 上全新安装了 Apache CouchDB

  • 可以毫无问题地使用蒲团

  • 可以以编程方式创建数据库和添加文档(包括视图)

  • 在执行视图时得到下面粘贴的错误(即使在 Futon 中执行最简单的默认非编辑临时 map-reduce 也是如此

    "map": "function(doc){ emit(null, doc); }"

    (在这种情况下,浏览器弹出窗口中会显示完全相同的错误文本)

这个错误对任何人都有意义吗?我应该从哪里开始调查?

注意事项:

  1. 路径 c:/cygwin/relax/APACHE~1.0/src/couchdb/ 在我的机器上不存在...
  2. 我已经尝试卸载 1.4.0 版本并将其替换为 1.3.0 甚至更旧的 1.2.0,但总是出现同样的问题。

错误信息:

{"error":"EXIT",
 "reason":"{{badmatch,\n
            {error,\n
            {enoent,\n
            [{erlang,open_port,\n
                [{spawn,\n
                     \"c:/Program Files (x86)/Apache Software Foundation/CouchDB/lib/couch-1.4.0/priv/couchspawnkillable ./couchjs.exe ../share/couchdb/server/main.js\"},\n
                 [stream,{line,4096},binary,exit_status,hide]],\n
                []},\n
            {couch_os_process,init,1,\n
                [{file,\n
                     \"c:/cygwin/relax/APACHE~1.0/src/couchdb/couch_os_process.erl\"},\n
                 {line,148}]},\n
            {gen_server,init_it,6,[{file,\"gen_server.erl\"},{line,304}]},\n
            {proc_lib,init_p_do_apply,3,\n
                [{file,\"proc_lib.erl\"},{line,239}]}]}}},\n
 [{couch_query_servers,new_process,3,\n
      [{file,\"c:/cygwin/relax/APACHE~1.0/src/couchdb/couch_query_servers.erl\"},\n
       {line,477}]},\n
  {couch_query_servers,lang_proc,3,\n
      [{file,\"c:/cygwin/relax/APACHE~1.0/src/couchdb/couch_query_servers.erl\"},\n
        {line,462}]},\n
  {couch_query_servers,handle_call,3,\n
      [{file,\"c:/cygwin/relax/APACHE~1.0/src/couchdb/couch_query_servers.erl\"},\n
       {line,334}]},\n  {gen_server,handle_msg,5,[{file,\"gen_server.erl\"},{line,585}]},\n
  {proc_lib,init_p_do_apply,3,[{file,\"proc_lib.erl\"},{line,239}]}]}"}

【问题讨论】:

    标签: windows erlang couchdb


    【解决方案1】:

    运行http://localhost:5984/_utils/verify_install.html的结果是什么?

    当人们安装到禁用 ntfs 8.3 文件名修改的文件系统时,通常会发生此错误。各种“调整”和性能工具为您执行此操作,而无需了解后果。

    最简单的解决方法是安装到没有空格的目录,例如c:\couchdb.

    出现奇怪的 c:\cygwin... 行是因为在构建和编译 CouchDB 时,返回的错误消息包含文件名和行号,相对于构建目录,而不是您未来的安装目录。

    此外,couchdb 邮件列表是寻求支持的最佳场所(我读过它:-)。

    【讨论】:

      【解决方案2】:

      noent 错误意味着文件丢失。检查此文件是否存在:

      c:/Program Files (x86)/Apache Software Foundation/CouchDB/lib/couch-1.4.0/priv/couchspawnkillable
      

      由于某种原因,您的设置可能会失败。

      【讨论】:

        【解决方案3】:

        这是 Erlang 而不是 CouchDB 的问题。

        Erlang(与 CouchDB 捆绑)仍在使用 8.3 短文件名格式(可能是由于向后兼容),但在较新版本的 Windows 中,默认禁用 8.3 名称生成 [read more here]

        我不建议启用 8.3 文件名来解决此问题(尽管可以),而是直接在 C:\<foldername> 下安装 CouchDB(文件夹名称中没有任何空格)。

        【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-02-13
        • 2012-02-11
        • 1970-01-01
        • 1970-01-01
        • 2019-12-31
        • 1970-01-01
        • 2019-12-29
        • 2012-02-24
        相关资源
        最近更新 更多