-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 2 posts ] 
Author Message
 Post subject: Utilisation de Hibernate/Oracle 10 XE en Mode Optimiste
PostPosted: Tue Mar 17, 2009 5:15 am 
Newbie

Joined: Tue Mar 17, 2009 4:54 am
Posts: 2
Bonjour,

J'essaye depuis quelques temps de migrer mon application Hibernate de Mysql à Oracle XE.
J'utilise Hibernate 3.4, un mapping "optimistic-lock=all", FlushMode.MANUAL, ManagedSessionContext.


J'ai plusieurs soucis.
Le premier concerne le mode optimiste. Il semble que Oracle ne le gère pas.

Ainsi par exemple, lorsque j'ai de la concurrence et j'update le même objet,

a) Thread 1
Code:
sessionFactory.openSession()
session.beginTransaction()
update Object set value = '3' where object_id='2' and value='2';

Thread 2
Code:
sessionFactory.openSession();
session.beginTransaction();
update Object set value = '3' where object_id='2' and value='2';


b) Thread 1
Code:
session.flush();
session.getTransaction ().commit ();
session.close();


c) Thread 2
Code:
session.flush();
session.getTransaction ().commit ();
session.close();



L'étape c) retourne une exception sous MySQL et pas sous Oracle.

C'est ce qui me pose un problème.
Cela m'empêche de détecter une concurrence, et donc de faire des retry.


Je ne souhaite pas utiliser de lock DB.

Pour résummer ma question est : comment utiliser le mode Optimiste de Hibernate avec Oracle XE.

Merci beaucoup


Top
 Profile  
 
 Post subject:
PostPosted: Wed Mar 18, 2009 11:00 am 
Newbie

Joined: Tue Mar 17, 2009 4:54 am
Posts: 2
Bon, j'ai du me forcer à utiliser les Lock.
En particulier LockMode.UPGRADE_NOWAIT après un select qui permet de locker ma ressource.

Ainsi lorsque j'essaye de la locker dans une autre transaction, j'ai une exception hibernate que je peux catcher afin de rejouer ma section persistente.


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 2 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.