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

Responder a