pymongo多线程报错Address already in use

  统计/机器学习 Python    浏览次数:1065        分享
1

我用cygwin跑的Python,开了1000个线程读取mongodb的数据,前面好好的,后面就开始报错了,这个问题挺久了,试了网上的方法好像都无效


  File "/usr/lib/python2.7/site-packages/pymongo/collection.py", line 2524, in remove
    with self._socket_for_writes() as sock_info:
  File "/usr/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "/usr/lib/python2.7/site-packages/pymongo/mongo_client.py", line 825, in _get_socket
    with server.get_socket(self.__all_credentials) as sock_info:
  File "/usr/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "/usr/lib/python2.7/site-packages/pymongo/server.py", line 168, in get_socket
    with self.pool.get_socket(all_credentials, checkout) as sock_info:
  File "/usr/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "/usr/lib/python2.7/site-packages/pymongo/pool.py", line 790, in get_socket
    sock_info = self._get_socket_no_auth()
  File "/usr/lib/python2.7/site-packages/pymongo/pool.py", line 826, in _get_socket_no_auth
    sock_info, from_pool = self.connect(), False
  File "/usr/lib/python2.7/site-packages/pymongo/pool.py", line 763, in connect
    _raise_connection_failure(self.address, error)
  File "/usr/lib/python2.7/site-packages/pymongo/pool.py", line 211, in _raise_connection_failure
    raise AutoReconnect(msg)
AutoReconnect: 127.0.0.1:27017: [Errno 112] Address already in use




 

莫斯   2017-12-12 15:59



   1个回答 
0

估计是port被占用了,不知道是不是前面的进程出了问题,试试把threads数量调小点,然后读个小数据试试。


SofaSofa数据科学社区DS面试题库 DS面经

数据痴汉   2017-12-13 00:53



  相关主题

怎么check dataframe 中的某个元素是否字符串?   1回答

dataframe数据变long python有stata类似的命令吗   1回答

请问python已知某个元素,怎么得到该元素在dataframe中的位置   1回答

用python生成一个取值在a到b之间的随机矩阵   1回答

python如何判断某路径下是否存在指定的csv文件?   2回答

怎么把一个大的dataframe按行分割成若干个小的dataframe。   1回答

Jupiter notebook中显示一个dataframe所有的列   2回答

如何将csv中多行变成一行   2回答

gc.collect()返回值是什么意思   1回答

怎么对有多个空格的字符串进行split?   1回答

python里清除已经定义过的变量   2回答

对tuple的元素赋值时报错:'tuple' object does not support item assignment   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!