Pymongo Safe Writes提供“传递给Py_BuildValue的错误格式字符”

时间:2012-10-29 22:29:10

标签: python mongodb pymongo

我试图将插入到MongoDB作为安全写入,并且我收到了未经授权的错误消息(MongoDB 2.2& Pymongo 2.2)。在升级到Pymongo 2.3之后,那个已经消失了,但是我收到了另一条消息,其中包含以下内容:

        MongoDB['my_collection'].save({'test' : 1111111} , safe = True)
      File "D:\Python24\Lib\site-packages\pymongo\collection.py", line 241, in save
        return self.insert(to_save, manipulate, safe, check_keys, **kwargs)
      File "D:\Python24\Lib\site-packages\pymongo\collection.py", line 315, in insert
        continue_on_error, self.__uuid_subtype), safe)
      File "D:\Python24\Lib\site-packages\pymongo\connection.py", line 831, in _send_message
        rv = self.__check_response_to_last_error(response)
      File "D:\Python24\Lib\site-packages\pymongo\connection.py", line 753, in __check_response_to_last_error
        response = helpers._unpack_response(response)
      File "D:\python24\lib\site-packages\pymongo\helpers.py", line 111, in _unpack_response
        as_class, tz_aware, uuid_subtype)
    SystemError: bad format char passed to Py_BuildValue

如果我转动safe=False一切正常。

任何关于此的想法都会有所帮助。

谢谢,

1 个答案:

答案 0 :(得分:0)

对于可能有类似经历的人来说,这是一个Python 2.4.0 问题。正如您在MongoDB tracking system中看到的那样,如果您升级到Python 2.4.3 或更新,它将得到解决。

我非常感谢MongoDB人员的帮助。他们非常支持和耐心。