Bug 45090 - Не запускается из-за нового Python3 и Werkzeug
Summary: Не запускается из-за нового Python3 и Werkzeug
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: odoo (show other bugs)
Version: unstable
Hardware: all Linux
: P5 normal
Assignee: Andrey Cherepanov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-02-01 11:35 MSK by Anton Zhukharev
Modified: 2023-10-24 17:37 MSK (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Anton Zhukharev 2023-02-01 11:35:35 MSK
Системы из образов (обновлены до Sisyphus 01.02.2023):

* 7db339f5e6e0cd2fbe67f4cb5df0f76e  alt-education-10.1-x86_64.iso (XFCE/KDE)
* c1e5326723ffacff16761beda9293f14  alt-kworkstation-10.1-install-x86_64.iso
* 3cc064c3410e8763c2b7bbd8d0af4936  alt-server-10.0-x86_64.iso
* d7fa044eba27efb20479cbeb04058c0b  alt-workstation-10.0-x86_64.iso

========================================
Пакет:

* odoo-14.0-alt3.20210112
* python3-3.10.8-alt1.1

========================================
Шаги воспроизведения:

1. Выполнить шаги 1-4 воспроизведения ошибки #42245

========================================
Фактический результат:

* Сервис odoo не запускается со следующей ошибкой (journalctl -xeu odoo.service):
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/bin/odoo", line 5, in <module>
    import odoo
  File "/usr/lib/python3/site-packages/odoo/__init__.py", line 115, in <module>
    from . import osv
  File "/usr/lib/python3/site-packages/odoo/osv/__init__.py", line 4, in <module>
    from . import osv
  File "/usr/lib/python3/site-packages/odoo/osv/osv.py", line 5, in <module>
    from ..models import Model, TransientModel, AbstractModel
  File "/usr/lib/python3/site-packages/odoo/models.py", line 6355, in <module>
    collections.Set.register(BaseModel)
AttributeError: module 'collections' has no attribute 'Set'
--------------------------------------------------------------------------------

========================================
Ожидаемый результат:

* Сервис odoo запускается.

========================================
Дополнительные исследования:

* Не воспроизводится в P10. Версия пакетов:
  * odoo-14.0-alt3.20210112
  * python3-3.9.6-alt1   

* Что "говорит" интерпретатор Python 3.9.6 (в P10):
--------------------------------------------------------------------------------
$ python3 <<< "from collections import Set, Sequence"
<stdin>:1: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.10 it will stop working
--------------------------------------------------------------------------------

* Обход ошибки из фактического результата:

  # grep -lRE 'collections.(Set|Sequence)' /usr/lib/python3/site-packages/odoo \
    | xargs sed -Ei '/collections.(Set|Sequence)/ s/collections/collections.abc/'

* После выполнения команды для обхода ошибки из фактического результата и попытке подключиться к серверу odoo он возвращает ошибку Internal Server Error, а в логе odoo (/var/log/odoo/odoo-server.log) есть критические ошибки:
--------------------------------------------------------------------------------
2023-02-01 08:17:05,892 6585 CRITICAL postgresql odoo.modules.module: Couldn't load module base 
2023-02-01 08:17:05,892 6585 CRITICAL postgresql odoo.modules.module: module 'werkzeug.routing' has no attribute 'NumberConverter' 
2023-02-01 08:17:05,897 6585 ERROR postgresql odoo.sql_db: bad query: UPDATE ir_module_module SET state='installed' WHERE state IN ('to remove', 'to upgrade')
ERROR: ОШИБКА:  отношение "ir_module_module" не существует
СТРОКА 1: UPDATE ir_module_module SET state='installed' WHERE state IN...
--------------------------------------------------------------------------------
Comment 1 Danil Shein 2023-02-01 14:14:36 MSK
Сопровождающий данного пакета cas@
Comment 2 Repository Robot 2023-10-24 17:37:36 MSK
odoo-16.0-alt1.20231013 -> sisyphus:

 Tue Oct 24 2023 Andrey Cherepanov <cas@altlinux> 16.0-alt1.20231013
 - New version (ALT #45090).