Python 使用pymongo的rs.降压

Python 使用pymongo的rs.降压,python,mongodb,pymongo,pymongo-2.x,Python,Mongodb,Pymongo,Pymongo 2.x,我正试图使用python脚本退出MongoDB primary。是否有办法将退出代码标记为OK 代码: 回溯: Traceback (most recent call last): File "./repldown.py", line 39, in <module> stepdown = conn.admin.command("replSetStepDown",60) File "/usr/local/lib64/python2.6/site-packages/pymo

我正试图使用python脚本退出MongoDB primary。是否有办法将退出代码标记为OK

代码:

回溯:

Traceback (most recent call last):

File "./repldown.py", line 39, in <module>
    stepdown = conn.admin.command("replSetStepDown",60)

 File "/usr/local/lib64/python2.6/site-packages/pymongo/database.py", line 391, in command
    result = self["$cmd"].find_one(command, **extra_opts)

File "/usr/local/lib64/python2.6/site-packages/pymongo/collection.py", line 604, in find_one
    for result in self.find(spec_or_id, *args, **kwargs).limit(-1):

File "/usr/local/lib64/python2.6/site-packages/pymongo/cursor.py", line 904, in next
    if len(self.__data) or self._refresh():

File "/usr/local/lib64/python2.6/site-packages/pymongo/cursor.py", line 848, in _refresh
    self.__uuid_subtype))

 File "/usr/local/lib64/python2.6/site-packages/pymongo/cursor.py", line 782, in __send_message
    res = client._send_message_with_response(message, **kwargs)

File "/usr/local/lib64/python2.6/site-packages/pymongo/mongo_client.py", line 1051, in _send_message_with_response

raise AutoReconnect(str(e))
pymongo.errors.AutoReconnect: connection closed
回溯(最近一次呼叫最后一次):
文件“/repldown.py”,第39行,在
stepdown=conn.admin.command(“replSetStepDown”,60)
命令行391中的文件“/usr/local/lib64/python2.6/site packages/pymongo/database.py”
结果=self[“$cmd”]。查找一个(命令,**额外选项)
文件“/usr/local/lib64/python2.6/site packages/pymongo/collection.py”,第604行,在find_one中
对于self.find(spec_或_id,*args,**kwargs.limit(-1)中的结果:
文件“/usr/local/lib64/python2.6/site packages/pymongo/cursor.py”,下一页第904行
如果len(self.\u数据)或self.\u refresh():
文件“/usr/local/lib64/python2.6/site packages/pymongo/cursor.py”,第848行,在刷新中
self.\uuid\u子类型)
文件“/usr/local/lib64/python2.6/site packages/pymongo/cursor.py”,第782行,在发送消息中
res=客户机。发送带有响应的消息(消息,**kwargs)
文件“/usr/local/lib64/python2.6/site packages/pymongo/mongo_client.py”,第1051行,在带有响应的发送消息中
升起自动重新连接(str(e))
pymongo.errors.AutoReconnect:连接已关闭
是,请执行以下操作:

from pymongo.errors import AutoReconnect

try:
    stepdown = conn.admin.command("replSetStepDown",100)
except AutoReconnect:
    pass
主进程在退出时故意立即关闭所有连接,因此该命令引发异常。忽略它并继续。

是的,执行以下操作:

from pymongo.errors import AutoReconnect

try:
    stepdown = conn.admin.command("replSetStepDown",100)
except AutoReconnect:
    pass

主进程在退出时故意立即关闭所有连接,因此该命令引发异常。忽略它并继续。

@monicak您还需要什么,或者您愿意接受这个答案吗?@monicak您还需要什么,或者您愿意接受这个答案吗?