En un cliente experimentaron que una instrucción select estaba bloqueando una instrucción insert. Para saber eso utilizaron el comando sp_who en la base de datos (esto porque tenemos casos seguidos de Time Out en las autorizaciones de flujos). Haciendo un experimento la forma en que un Select pueda bloquear a un Insert o Update es si en el ambiente que se corre el select es ISOLATION LEVEL SERIALIZABLE la consulta es: ¿Una consulta Excel en Evolution se especifica que se ejecuente en un ambiente SET TRAN ISOLATION LEVEL READ COMMITTED o es la base de datos quien define por defecto el ambiente? |
El fuente de Evolution, utiliza SET TRAN ISOLATION LEVEL READ COMMITTED para todas las transacciones que crea. Las instrucciones de consulta, como las de Excel, no crean transacciones por lo que no especifican un Isolation Level, no lo necesitan. A nivel de SQL Server, el valor por defecto depende de la versión del producto, para ello podes consultar en la documentación de Microsoft. |