2012-09-29 52 views
0

我们将.couch文件从一个驱动器移动到另一个驱动器,因为原始驱动器已达到100%的空间。 然后,我们将新驱动器重新安装到较旧/最初的目录。 换句话说,没有任何改变。CouchDB查看无响应

现在我能够看到文档,但无法运行视图。

它只是挂起。

任何想法可能是什么问题?

+1

看看日志。 –

回答

1

通常在不重新启动CouchDB本身的情况下对文件进行洗牌就像在她坐在奶奶下面时移动椅子一样。迟早,她会注意到....我想你已经重新定位了couchdb文件夹的一个子部分,并且不足以使视图正常工作。

如果你GET $COUCH/$DB/_design/$DDOC/_info你会看到一个"signature": "e5c78acfda577dfba5abb602c432ead2"字段,其​​中十六进制字符串与该ddoc的基础视图文件的名称相关。

如果您使用管理员凭证GET $COUCH/_config,则可以看到指向目录的视图&的路径。你应该确保这些在重新装载过程中没有被搞砸。

在我的情况是这样的:

"database_dir": "/usr/local/var/lib/couchdb", 
"index_dir": "/usr/local/var/lib/couchdb", 

index_dir我可以看到/usr/local/var/lib/couchdb/.testy_design/mrview/e5c78acfda577dfba5abb602c432ead2.view。这是在主1.3.0-a,所以1.2.0和以下的位置是不同的。无论如何,config中的database_dir和index_dir参数需要与磁盘上的内容匹配。检查一下。

您应该重新安装整个/usr/local/var/lib/couchdb文件(包括视图,如果您不想重建它们)而不是某些子组件。

或者,它可能只是一个缓存问题,在重新启动CouchDB之后,事情就会解决。通常情况下,Couch依赖于缓存内容,并不希望椅子移动:-)。