si probe lo siguietne:

- quitando el with(rowlock)
 - estableciendo ALLOW_PAGE_LOCKS=OFF  en todos los indices de al tabla
tblInteracciones (3 indices)
- estableciendo los indices como clustered, ya que antes estaban
non-clustered, (compare las estucturas de la DB1 con el resto para
actualizar estas diferencias),
- hice un rebuild y reorganize de todos los indices de todas las bases
implicadas en al app
- drop y create de estos indices,
- tengo SP2 instalado en el sql server.

no entiendo tu pregunta,
aclaro lo sgte: las tres interacciones hacen exactamente lo mismo, se ejcuta
el mismo XLANG de Biztalk, en al traza salto el isolation que abre el
Biztalk Biztalk:  isolationlevel=serializable (4)
(quiero evitar por ahora el cambiar algo en el XLANG de Biztalk)

Muchas Gracias!!
Slds
Clarisa

El 1 de octubre de 2008 11:48, Jose Mariano Alvarez <
[EMAIL PROTECTED]> escribió:

>  CLarisa:
> Probaste quitando el with(rowlock)?
> Una de las transacciones es la de biztalk y el componente COM+  y la otra?
>
> --------------------------------
> Atte.
> Ing. Jose Mariano Alvarez
> SQL Total Consulting
>
>
> 2008/10/1 Clarisa Savio <[EMAIL PROTECTED]>
>
>>  Hola Mariano,
>>  Bueno describo un poco mas el problema,
>>  Tengo una base de datos DB1(SQL 2005) con una tabla tblInteracciones,
>> esta tabla tiene una PK_idInteraccion (clustered),
>> ademas tengo un servidor Biztalk que abre una transaccion de tipo
>> serializable ejecuta un metodo de un componente de Com+ que ejecuta un store
>> procedure, este store procedure hace un insert into tblInteracciones
>> with(rowlock),
>>  este esquema viene funcionando desde hace varios años (SQL2000), esta
>> replicado en 6 bases de datos, y el tema es que empezaron a saltar deadlocks
>> en el insert into, excepto  en una base de datos, el profiler indica que el
>> deadlock se produce en el pk_idInteracciones,
>> Si bien en la documentacion de sql 2005 dice que un isolation level
>> serializable "Se colocan bloqueos de intervalo en el intervalo de valores de
>> clave que coincidan con las condiciones de búsqueda de cada instrucción
>> ejecutada en una transacción. De esta manera, se impide que otras
>> transacciones actualicen o inserten filas que satisfagan los requisitos de
>> alguna de las instrucciones ejecutadas por la transacción actual" ademas:
>> Otras transacciones no pueden insertar filas nuevas con valores de clave que
>> pudieran estar incluidos en el intervalo de claves leído por las
>> instrucciones de la transacción actual hasta que ésta finalice.
>>  *El tema es que esto funciona en una DB  y en las demas se producen
>> deadlocks*,
>>  aclaracion: las bases de datos se migraron a sql 2005 hace unos meses
>> atras (compatibilidad 80)sin presentar estos problemas por deadlocks, ademas
>> los cambios realizados hasta hoy no estan directamente relacionados con la
>> funcionalidad que describo.
>>
>>
>> Muchas Gracias!!
>>   Slds
>> Clarisa
>>
>>
>> 2008/9/23 Jose Mariano Alvarez <[EMAIL PROTECTED]>:
>>   > El insert into por si solo no va a producir eso.
>> >
>> > Si estas en 2005 podrias probar snapshot isolation para la query previo
>> a
>> > que habilites ALLOW_SNAPSHOT_ISOLATION.
>> >
>> > ALTER DATABASE AdventureWorks SET ALLOW_SNAPSHOT_ISOLATION ON;
>> >
>> > Luego en la conecxion usar esto al comienzo
>> >
>> > SET TRANSACTION ISOLATION LEVEL SNAPSHOT;
>> >
>> >
>> >
>> >
>> > --------------------------------
>>  > Atte.
>> > Ing. Jose Mariano Alvarez
>> > SQL Total Consulting
>> >
>> >
>>   > On Tue, Sep 23, 2008 at 17:43, Clarisa Savio <[EMAIL PROTECTED]>
>> wrote:
>> >>
>> >> Hola Mariano,
>> >>
>> >> Antes de pasarte info, simplifico un poco, tengo una DB con la misma
>> >> tabla, misma estructura, pero en esa DB no se propduce el error, no
>> >> encuentro la diferencia con la otra DB, donde si se producen los
>> >> deadlocks,
>> >>
>> >> adelanto: el problema se da en un insert into y se usa un RowLock, en
>> >> ambas bases se refleja la misma estructura de tabla indices y Sps, es
>> >> como una replicacion de la funcionalidad.
>> >>
>> >> muchas gracias!!
>> >> Slds
>> >> Clarisa
>> >>
>> >> 2008/9/23 Jose Mariano Alvarez <[EMAIL PROTECTED]>:
>> >> > Clarisa, podrias pasar el diseño de la tabla, los indices y las dos
>> >> > sentencias que estan dando ese  error.
>> >> > Es muy probable que haya involucrado un table scan.
>> >> > Podrías indicar ademas el plan de la sentencia involucrada a ver si
>> >> > tiene
>> >> > paralelismo.
>> >> > Entre las alternativas posibles están por ejemplo usar el hint
>> ROWLOCK
>> >> > pero
>> >> > antes me gustaría conocer algo mas de info.
>> >> >
>> >> >
>> >> > --------------------------------
>> >> > Atte.
>> >> > Ing. Jose Mariano Alvarez
>> >> > SQL Total Consulting
>> >> >
>> >> >
>> >> > 2008/9/23 Clarisa Savio <[EMAIL PROTECTED]>
>> >> >>
>> >> >> Buenas!
>> >> >>
>> >> >> Estoy teniendo problemas con un deadlock,
>> >> >> con la info que tengo lo unico que se es que esta pasando en un
>> indice,
>> >> >> el type es 7=Key
>> >> >> mode 15  = RangeI_N (Insert Key-Range and Null Resource lock). Used
>> to
>> >> >> test ranges before inserting a new key into an index.
>> >> >> el tema es que ya hice un drefrag de los indices de la tabla en
>> >> >> cuestion, (todos no solo el que indice el deadlock)
>> >> >> y se soluciono por un momento luego volvio a suceder el deadlock,
>> >> >> alguien podria recomendarme que accion tomar por favor?
>> >> >>
>> >> >> Muchas Gracias!!
>> >> >>
>> >> >> Saludos
>> >> >> Clarisa
>> >> >>
>> >> >
>> >> >
>> >>
>> >
>> >
>>
>
>

Responder a