Este problema se presentó recientemente con el complemento de Hoteleria
Odoo Hotel Management System ya que al guardar una reservación esta se crea muchas veces dentro de la tabla hotel_room_reservation_line y al intentar cargar el reservation summary el sistema tarda demasiado.
En la imagen se puede observar como un solo registro se crea muchas veces, actualmente encontré una solución a nivel base de datos ya que aún no depuro el código fuente de la aplicación para ver que está causando la repetición.
Si tienen el mismo problema pueden ejecutar la siguiente sentencia la cual eliminará los duplicados dentro de la base de datos y agilizará las transacciones.
Para solucionar el problema temporalmente sin afectar el código fuente de la aplicación realicé un JOB dentro de PostgreSQL que elimina los registro duplicados, puedes ver el tema en el siguiente link en donde explico como realizarlo.
https://erpconsultores.blogspot.com/2019/03/crear-un-job-en-posgresql.html
https://erpconsultores.blogspot.com/2019/03/crear-un-job-en-posgresql.html
Verificar que existen duplicados:
SELECT * FROM hotel_room_reservation_line ORDER BY id
Eliminar los duplicados dentro de la tabla:
DELETE FROM hotel_room_reservation_line a USING (SELECT MIN(id) as ctid, reservation_idFROM hotel_room_reservation_lineGROUP BY reservation_id HAVING COUNT(*) > 1)bWHERE a.reservation_id = b.reservation_idAND a.id <> b.ctid
Solamente deben copiar y ejecutar el código dentro de pgAdmin o el gestor de base de datos que utilicen.
Pueden ver el siguiente vídeo en donde realizo la eliminación de los duplicados.
Comentarios
Publicar un comentario
Gracias por tus comentarios.