[Python] Mongoengine Connection Failure

Discussão em 'Python' iniciado por Stack, Maio 7, 2025.

  1. Stack

    Stack Membro Participativo

    I am trying to run celery beat for my project, but it's giving me the following error.

    The celery worker is running fine.

    I am using Python 3.9

    Using MongoDB: 6.0.11

    raise ConnectionFailure(err_msg)
    mongoengine.connection.ConnectionFailure: A different connection with alias `default` was already registered. Use disconnect() first


    installed packages with its versions:

    Package Version

    --------------------------------- ------------

    amqp 2.6.1

    asgiref 3.7.2

    async-timeout 4.0.3

    billiard 3.6.4.0

    boto3 1.28.65

    botocore 1.31.65

    Bottleneck 1.3.5

    celery 4.4.7

    celerybeat-mongo 0.2.0

    certifi 2023.7.22

    cffi 1.16.0

    chardet 5.2.0

    charset-normalizer 3.3.0

    click 8.1.7

    click-didyoumean 0.3.0

    click-plugins 1.1.1

    click-repl 0.3.0

    cmdstanpy 1.2.0

    colorama 0.4.6

    convertdate 2.4.0

    coreapi 2.3.3

    coreschema 0.0.4

    cryptography 41.0.4

    cycler 0.12.1

    Cython 3.0.4

    Django 4.2.6

    django-encrypted-model-fields 0.6.5

    django-rest-framework-mongoengine 3.4.1

    django-rest-swagger 2.2.0

    djangorestframework 3.14.0

    dnspython 2.4.2

    docutils 0.20.1

    ephem 4.1.2

    fernet 1.0.1

    gevent 23.9.1

    greenlet 3.0.0

    holidays 0.35

    idna 3.4

    imgkit 1.2.3

    importlib-resources 6.1.0

    itypes 1.2.0

    Jinja2 3.1.2

    jmespath 1.0.1

    kiwisolver 1.4.4

    kombu 4.6.11

    LunarCalendar 0.0.9

    MarkupSafe 2.1.3

    matplotlib 3.4.3

    mkl-service 2.4.0

    mongoengine 0.20.0

    numexpr 2.8.4

    numpy 1.22.4

    openapi-codec 1.3.2

    packaging 23.2

    pandas 1.5.3

    Pillow 9.4.0

    pip 23.3

    plotly 5.17.0

    prompt-toolkit 3.0.39

    prophet 1.1.4

    pyaes 1.6.1

    pycparser 2.21

    PyMeeus 0.5.12

    pymongo 3.13.0

    pyparsing 3.1.1

    pystan 2.19.1.1

    python-dateutil 2.8.2

    pytz 2023.3.post1

    redis 5.0.1

    requests 2.31.0

    s3transfer 0.7.0

    scipy 1.11.3

    setuptools 68.0.0

    simplejson 3.19.2

    six 1.16.0

    sqlparse 0.4.4

    stanio 0.3.0

    tenacity 8.2.3

    tornado 6.2

    tqdm 4.66.1

    typing_extensions 4.8.0

    tzdata 2023.3

    uritemplate 4.1.1

    urllib3 2.0.7

    vine 1.3.0

    wcwidth 0.2.8

    wheel 0.41.2

    XlsxWriter 3.1.8

    zipp 3.17.0

    zope.event 5.0

    zope.interface 6.1

    Traceback (most recent call last):
    File "C:\anaconda\envs\condaenv_python3.10\lib\runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
    File "C:\anaconda\envs\condaenv_python3.10\lib\runpy.py", line 86, in _run_code
    exec(code, run_globals)
    File "C:\anaconda\envs\condaenv_python3.10\Scripts\celery.exe\__main__.py", line 7, in <module>
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\celery\__main__.py", line 16, in main
    _main()
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\celery\bin\celery.py", line 322, in main
    cmd.execute_from_commandline(argv)
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\celery\bin\celery.py", line 499, in execute_from_commandline
    super(CeleryCommand, self).execute_from_commandline(argv)))
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\celery\bin\base.py", line 305, in execute_from_commandline
    return self.handle_argv(self.prog_name, argv[1:])
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\celery\bin\celery.py", line 491, in handle_argv
    return self.execute(command, argv)
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\celery\bin\celery.py", line 415, in execute
    return cls(
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\celery\bin\base.py", line 308, in run_from_argv
    return self.handle_argv(prog_name,
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\celery\bin\base.py", line 393, in handle_argv
    return self(*args, **options)
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\celery\bin\base.py", line 253, in __call__
    ret = self.run(*args, **kwargs)
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\celery\bin\beat.py", line 109, in run
    return beat().run()
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\celery\apps\beat.py", line 81, in run
    self.start_scheduler()
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\celery\apps\beat.py", line 100, in start_scheduler
    print(self.banner(service))
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\celery\apps\beat.py", line 122, in banner
    c.reset(self.startup_info(service))),
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\celery\apps\beat.py", line 132, in startup_info
    scheduler = service.get_scheduler(lazy=True)
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\celery\beat.py", line 657, in get_scheduler
    return symbol_by_name(self.scheduler_cls, aliases=aliases)(
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\celerybeatmongo\schedulers.py", line 127, in __init__
    self._mongo = mongoengine.connect(db, host=host, alias=alias)
    File "C:\anaconda\envs\condaenv_python3.10\lib\site-packages\mongoengine\connection.py", line 401, in connect
    raise ConnectionFailure(err_msg)
    mongoengine.connection.ConnectionFailure: A different connection with alias `default` was already registered. Use disconnect() first


    I tried to add the following line in the code where I am connecting mongoengine

    disconnect()

    but it did not work.

    now I am expecting that celery beat should run.

    Continue reading...

Compartilhe esta Página