I am using flask celery and mongo in seperate containers. WHen I start the containers, I am hit with the following error
worker | pymongo.errors.AutoReconnect: connection pool paused
worker |
worker | The above exception was the direct cause of the following exception:
worker |
worker | Traceback (most recent call last):
worker | File "/opt/venv/lib/python3.8/site-packages/celery/app/trace.py", line 451, in trace_task
worker | R = retval = fun(*args, **kwargs)
worker | File "/opt/venv/lib/python3.8/site-packages/celery/app/trace.py", line 734, in __protected_call__
worker | return self.run(*args, **kwargs)
worker | File "/app/app/routes/celery_tasks.py", line 76, in nlp_ml
worker | data = CrawlData.objects(ml_proc='null')
worker | File "/opt/venv/lib/python3.8/site-packages/mongoengine/queryset/manager.py", line 38, in __get__
worker | queryset = queryset_class(owner, owner._get_collection())
worker | File "/opt/venv/lib/python3.8/site-packages/mongoengine/document.py", line 233, in _get_collection
worker | cls.ensure_indexes()
worker | File "/opt/venv/lib/python3.8/site-packages/mongoengine/document.py", line 913, in ensure_indexes
worker | collection.create_index(fields, background=background, **opts)
worker | File "/opt/venv/lib/python3.8/site-packages/pymongo/collection.py", line 1687, in create_index
worker | return self.__create_indexes([index], session, **cmd_options)[0]
worker | File "/opt/venv/lib/python3.8/site-packages/pymongo/collection.py", line 1557, in __create_indexes
worker | with self._socket_for_writes(session) as sock_info:
worker | File "/usr/lib/python3.8/contextlib.py", line 113, in __enter__
worker | return next(self.gen)
worker | File "/opt/venv/lib/python3.8/site-packages/pymongo/mongo_client.py", line 1099, in _get_socket
worker | with server.get_socket(
worker | File "/usr/lib/python3.8/contextlib.py", line 113, in __enter__
worker | return next(self.gen)
worker | File "/opt/venv/lib/python3.8/site-packages/pymongo/pool.py", line 1371, in get_socket
worker | sock_info = self._get_socket(all_credentials)
worker | File "/opt/venv/lib/python3.8/site-packages/pymongo/pool.py", line 1436, in _get_socket
worker | self._raise_if_not_ready(emit_event=True)
worker | File "/opt/venv/lib/python3.8/site-packages/pymongo/pool.py", line 1407, in _raise_if_not_ready
worker | _raise_connection_failure(
worker | File "/opt/venv/lib/python3.8/site-packages/pymongo/pool.py", line 250, in _raise_connection_failure
worker | raise AutoReconnect(msg) from error
worker | pymongo.errors.AutoReconnect: mongo:27017: connection pool paused
When I delete /data/db/mongod.lock once and restarting container, the same error appears. But if deleted again, and restarted then this error wont appear till I make a change in flask code. If flask is reloaded with some code changes the same thing has to repeat again. How is it possible to remove this error permanently.
SOlved using this explained in How to handle PyMongo/MongoEngine AutoReconnect?