Lo solucioné haciendo un bloqueo de tipo "Upgrade", de esta forma me mantiene la fila bloqueada hasta que se produce un Update.
Gracias! On 17 abr, 19:29, Gustavo Ringel <[email protected]> wrote: > lo que tenes que hacer en ese caso a mi gusto es usar Lock como te puse > antes. > Se puede usar Serializable como isolation level de la transaccion pero eso > te va a generar problemas. > > Gustavo. > > 2010/4/17 Iván Oliver <[email protected]> > > > > > el isolation level upgradre, me podria valer? > > > On 17 abr, 18:35, Iván Oliver <[email protected]> wrote: > > > Gracias por aclararme un poco las ideas. > > > > El problema q tengo es el siguiente: > > > Hay una tabla en la base de datos que tiene un atributo que es > > > "contador de matriculas de producto(String)". Este dato es crucial > > > para crear la matricula de un producto. > > > Lo critico, es cuando varios usuarios mandan crear 50 productos a la > > > vez. Si compruebo en la tabla "productos" la matricula, hay repetidas, > > > porque algunos selects mandados por los usuarios han cogido el mismo > > > valor, antes que se realizara el correspondiente update de "contador > > > de matriculas de producto". > > > > Resumiendo el proceso: > > > -Un select de ultimo contador > > > -Update de contador, aumentado en 1. > > > > Como solucionariais este problema? > > > No sé, si recurrir a la base de datos, o es un parámetro de NHibernate > > > que no configuro bien. > > > > (Sé que el contador de algo, no deberia estar en una tabla, pero es > > > una jerarquía de tablas heredada, y no puedo cambiarla...) > > > > On 17 abr, 18:23, Gustavo Ringel <[email protected]> wrote: > > > > > quise decir concepto de Isolation que hayas usado para las > > transacciones. > > > > > 2010/4/17 Gustavo Ringel <[email protected]> > > > > > > mmm, si estas trabajando en NH no estas trabajando sobre filas de > > tablas de > > > > > BBDD sino sobre objetos. > > > > > NH se va a encargar de trabajar sobre la base, segun el concepto de > > > > > Isolation que hayas usado para la base, y tenes opciones como Lock en > > la > > > > > session pero salvo casos extremos no es conveniente usarlo. > > > > > > Gustavo. > > > > > > 2010/4/17 Iván Oliver <[email protected]> > > > > > > Hola, > > > > > >> Cómo puedo bloquear una fila de una tabla de BBDD mientras haya una > > > > >> transacción haciendo uso de ella? Y que la libere cuando haya > > > > >> terminado la transacción? > > > > > >> Muchas gracias. > > > > > >> -- > > > > >> Para escribir al Grupo, hágalo a esta dirección: > > > > >> [email protected] > > > > >> Para más, visite:http://groups.google.com/group/NHibernate-Hispano > > > > > -- > > > > Para escribir al Grupo, hágalo a esta dirección: > > [email protected] > > > > Para más, visite:http://groups.google.com/group/NHibernate-Hispano > > > > -- > > > Para escribir al Grupo, hágalo a esta dirección: > > [email protected] > > > Para más, visite:http://groups.google.com/group/NHibernate-Hispano > > > -- > > Para escribir al Grupo, hágalo a esta dirección: > > [email protected] > > Para más, visite:http://groups.google.com/group/NHibernate-Hispano > > -- > Para escribir al Grupo, hágalo a esta dirección: > [email protected] > Para más, visite:http://groups.google.com/group/NHibernate-Hispano -- Para escribir al Grupo, hágalo a esta dirección: [email protected] Para más, visite: http://groups.google.com/group/NHibernate-Hispano
