我在Google上搜索并发现了各种python + tap解决方案,这些解决方案可以让我从存储桶中转储所有密钥,但它们都不适用于我。我在11230端口有一个桶,我需要转储所有密钥才能将它们填入sphinx搜索引擎。
如果我执行:
# python /opt/couchbase/lib/python/tap_example.py 127.0.0.1:11230
我得到以下输出:
info: New bin connection from None
error: uncaptured python exception, closing channel <tap.TapConnection connected at 0x7f5d287184d0> (<type 'exceptions.AssertionError'>: [/usr/lib/python2.6/asyncore.py|read|78] [/usr/lib/python2.6/asyncore.py|handle_read_event|428] [/opt/couchbase/lib/python/mc_bin_server.py|handle_read|325])
即使我尝试其他主机或端口,此错误也是一样的。我还尝试过在论坛和论坛上发现的许多其他python脚本,但是所有这些脚本都产生了同样的错误。
我的主要开发环境包括PHP&amp; Perl on Debian linux box但我会采取任何解决方案,只将所有密钥转储到纯文本文件中。
感谢您的帮助!
答案 0 :(得分:1)
延迟回复,但您可以使用couchbase视图。
function (doc, meta) {
if(meta.type == 'json') {
emit(doc.key, null);
}
}
这会发出存储桶中json的每个键。