'NoneType' 将 couchbase 与 git、日志模块一起使用时出现对象不可调用错误

'NoneType' object is not callable error when using couchbase with git, logbook module

我在测试 couchbase python SDK 时遇到了奇怪的结果。 下面是源代码和结果:

# xxx.py
from gcouchbase.bucket import Bucket
dsn = 'couchbase://[url-of-couchbase]/[bucket-name]'
db = Bucket(dsn)

# yyy.py
import logbook
import git
from xxx import db


# python yyy.py
Traceback (most recent call last):
  File "/home/username/env/local/lib/python2.7/site-packages/gcouchbase/iops_gevent10.py", line 88, in timer_event_factory
    return GEventTimer()
TypeError: 'NoneType' object is not callable
[1]    8546 abort (core dumped)  python yyy.py

奇怪的是,当我从 yyy.py 中删除 import gitimport logbook 时,错误并没有发生。 这个错误有什么原因吗?是否应该处理 couchdb 的任何资源?

一个异步事件似乎在 Bucket 对象被移除后到达。如果您显式调用 bucket._close(),脚本将不会崩溃。无论如何,它看起来像是 gcouchbase.

的错误