我正在编写Tornado应用程序并需要进行异步N1QL查询.对于map-reduce视图使用 txcouchbase(扭曲的couchbase库)以及 tornado-twisted bridge工作正常,但我不能对N1QL查询做同样的事情.
...
from txcouchbase.bucket import Bucket as AsyncBucket
ASYNC_USER_BUCKET = AsyncBucket(**settings.USER_BUCKET_ARGS)
class FooHandler(BaseAPIHandler):
@schema.validate()
@authenticated
@coroutine
def get(self):
res = yield ASYNC_USER_BUCKET.n1qlQueryAll("SELECT * FROM farm_user;")
...
执行以下查询后,res对象不可迭代,看起来像这样.
似乎_BatchedRowMixin__rows字段包含查询的结果,但我不确定这是进行异步N1QL查询的正确和稳定的方法.还有其他选择吗?
最佳答案 您似乎已经在我们的客户端中发现了一个错误.它已被提交为 https://issues.couchbase.com/browse/PYCBC-306.我们的代码审查有一个补丁,应尽快合并( http://review.couchbase.org/#/c/56402/).