在Scala中使用Java API查询Couchbase中的视图会引发超时异常

时间:2012-11-20 03:08:24

标签: java couchbase

编辑:请注意,这在java 1.6中完美运行但在java 1.7中失败。

我一直在努力让Couchbase 2.0 java API与视图一起使用。它非常适合将钥匙放入水桶中。

当我使用Java 1.7运行下面的scala代码时,我得到以下异常:

scala> ERROR com.couchbase.client.ViewNode$EventLogger:  Connection timed out: [localhost/127.0.0.1:8092(closed)]

我也尝试在连接构建器中设置超时无效。

    import java.net.URI
    import com.couchbase.client.CouchbaseClient
    import scala.collection.JavaConversions._
    val uris = List(URI.create("http://127.0.0.1:8091/pools"))
    val client = new CouchbaseClient(uris, "test", "")
    val view = client.asyncGetView("date", "dates")

但是,下面的python代码工作正常,连接到视图,并具有正确的输出:

    from couchbase.client import Couchbase
    client = Couchbase("localhost:8091", "username", "password")
    bucket = client["test"]
    view = bucket.view("_design/date/_view/dates")
    count = 0
    for row in view:
        count = count + 1
    print(count)

任何想法如何正确连接?我试图在我的代码中完全复制他们的示例。不幸的是,使用python不是这个项目的选项。

1 个答案:

答案 0 :(得分:1)

我们知道这个问题(http://www.couchbase.com/issues/browse/JCBC-151)。

这不是你的错或scalas,只是我们的客户端目前在连接java 7时遇到一些问题。如果修复了这个问题,我确信你的代码会按预期工作。