Applyupdates me bloquea la aplicación
Problemas con applyupdates
Buenas, Uso Firebird 2.0.1, delphi2006 y dbexpress. Utilizo TSQLquery , un provider y un clientdataset. En el query indico los campos claves y el provider lo tengo a upwherekeyOnly. El campo cliente y refversion ProviderFlags(pfInUpdate=false,pfInWhere=false) la select: SELECT REF_C, REF_N, TIPOM, TCORTE, PU, FECHA, LARGO, ANCHO, PESO, TRATMTO, NOTAS, TRABEXTERNO,CODCLIENTE,TIPO, PERIMETRO, Clientes.Nom Cliente, VTRATMTO, PUPROPUESTO, VMAT,VCORTE,DENOMINACION,TTRATMTOS,TIPOGEOMETRIA, C_VR,REF_C||' '||C_VR REFVERSION, DEOFERTA FROM PIEZAS Piezas Inner join Clientes on Piezas.CodCliente=Clientes.Codigo where ref_n=:ref_n El bloqueo se produce en:
Nota: El bloqueo no se produce siempre, depende de :ref_n. ¿a qué es debido? Parando el motor firebird y si lo vuelvo a arrancar todo va bien. Si no paro el motor, el bloqueo se transmite a otros forms de la aplicación. Al día tengo que reiniciar el motor 2-3 veces |
¿No será problema de transacciones? ¿Deadlock?
|
No me muestra ningún mensaje referente a DeadLock.
Cómo podría evitar el deadLock? ( sólo se modifica un registro ) |
Normalmente pasado un tiempo de bloqueo, la aplicación debería darte un error de tiempo de espera.
¿Puede ser que se te esté quedando a tí o a otpo programa/ordenador alguna transacción abierta sobre esa tabla? |
Desde otro equipo modifico otro registro de la misma tabla y va bien.
Por curiosidad, tiene algo que ver el Dialecto utilizado? |
La franja horaria es GMT +2. Ahora son las 11:50:34. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi