Jairo Graterón escribió:

> La cola está dividida en dos partes
> 
> 1. Tabla cola_cliente
> 2. Tabla cola_trabajo_cliente

Hola, yo estuve tratando de darle una vuelta a tu problema pero no
conseguí comprenderlo por completo para pensar cuál puede ser una buena
solución.  Pero una cosa que me vino inmediatamente es que quizás te
conviene representar algunos de esos locks usando advisory locks que se
liberen automáticamente al final de la transacción, y usar "conditional
lock" para saltar clientes/trabajos que estén bloqueados.  Puede ser
mejor que usar FOR UPDATE SKIP LOCKED.  (O quizás no).

Échale una pensada a ver si te sirve ...

saludos

-- 
Álvaro Herrera                https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services


Reply via email to