Hola a todos,
En un odoo v16 CE, montado con docker, en un ubuntu 22.04 , en un VPS con 2 gigas de RAM y un core y que ha sido montado con el fichero de docker compose oficial de odoo, con el workers = 2 , con la única modidicación de exponer el puerto 8072, me ocurre lo siguiente:
Da este error y el procesador se pone al 100%
Traceback (most recent call last):
File "/usr/bin/odoo", line 5, in
import odoo
File "/usr/lib/python3/dist-packages/odoo/__init__\.py",\ line\ 28,\ in\
\ \ \ \ import\ gevent\.monkey
\ \ File\ "/usr/lib/python3/dist\-packages/gevent/__init__\.py",\ line\ 86,\ in\
\ \ \ \ from\ gevent\._hub_local\ import\ get_hub
\ \ File\ "/usr/lib/python3/dist\-packages/gevent/_hub_local\.py",\ line\ 101,\ in\
\ \ \ \ import_c_accel\(globals\(\),\ 'gevent\.__hub_local'\)
\ \ File\ "/usr/lib/python3/dist\-packages/gevent/_util\.py",\ line\ 148,\ in\ import_c_accel
\ \ \ \ mod\ =\ importlib\.import_module\(cname\)
\ \ File\ "/usr/lib/python3\.9/importlib/__init__\.py",\ line\ 127,\ in\ import_module
\ \ \ \ return\ _bootstrap\._gcd_import\(name\[level:\],\ package,\ level\)
\ \ File\ "src/gevent/_hub_local.py", line 1, in init gevent._gevent_c_hub_local
ValueError: greenlet.greenlet size changed, may indicate binary incompatibility. Expected 152 from C header, got 40 from PyObject
Entiendo que workers = 2 y un solo procesador no es un problema.
Yo por mi no ponía workers , pero ocurre que en v15 si me funciona el longpolling poniendo 3 workers, parece ser que para que funcione el chat los workers tienen que ser mayor que uno.
¿Alguien sabe como arreglar esto?
Saludos y gracias.
¡Bienvenido a los foros Aeodoo!
Somos la comunidad de Odoo internacional hispanohablante.
Estos foros son para compartir y debatir dudas técnicas, funcionales y mejores prácticas para Odoo. Recuerda que no están permitidos los insultos, descalificaciones o spam, cualquier conducta reprobable supondrá el baneo del usuario.
This question has been flagged
1
Reply
1453
Views
Hola! No parece ser un problema de workers, sino de compatibilidad de paquetes. Tienen que ser compatibles gevent y greenlet.
Tienes que versión de estos paquetes es instalada?
Hola,
Gracias por contestar
gevent==20.9.0
greenlet==2.0.2
estas son las versiones instaladas.
Gracias
Your Answer
Enjoying the discussion? Don't just read, join in!
Create an account today to enjoy exclusive features and engage with our awesome community!
Sign up
En ese caso, para la vesrion gevent 20.9.0 instala la version greenlet==0.4.17
Prueba pip install greenlet=0.4.17, para que seas compatible con gevent 20.9.0
Pruebalo y avisame!
Hola, muchas gracias
Lo he probado y he cambiado la version de greenlet
el procesador ya no sopla y no da ese error, ahora da otro
esult = endpoint(self, *args, **params_ok)
File "/usr/lib/python3/dist-packages/odoo/addons/bus/controllers/websocket.py", line 23, in websocket
return WebsocketConnectionHandler.open_connection(request)
File "/usr/lib/python3/dist-packages/odoo/addons/bus/websocket.py", line 817, in open_connection
Websocket(request.httprequest.environ['socket'], request.session),
KeyError: 'socket'
2023-10-05 10:51:44,847 16 INFO teslaspain werkzeug: 79.117.130.249 - - [05/Oct/2023 10:51:44] "GET /websocket HTTP/1.1" 500 - 1 0.000 0.005
2023-10-05 10:51:51,715 17 INFO teslaspain werkzeug: 172.19.0.1 - - [05/Oct/2023 10:51:51] "GET /websocket HTTP/1.1" 400 - 1 0.001 0.004
2023-10-05 10:52:01,915 21 INFO teslaspain odoo.addons.base.models.ir_cron: Starting job `Jobs Garbage Collector`.
Despues de hacer una modificación en el proxy , ya no da ese error, ahora ya estaría bien.
Muchas gracias
Que buena noticia! Recuerda marcar como solucion mi respuesta anterior! Saludos cordiales.