Gestion de la concurrence
Bonjour,
Me revoilà encore une fois avec mes problèmes sur mon application (struts+hibernate+db oracle sur jonas).
Cette fois-ci il s'agit de la gestion de la concurrence.
Je me suis donc plongée dans la doc hibernate mais je suis perdue là.
J'ai deux tables avec relation père-fils avec un many-to-one et un set inverse="true" de l'autre côté.
Tout se passe bien jusqu'à ce que je charge l'application (avec JMeter) et obtienne des insertions concurrentes.
Le test crée 1père avec 1 fils (peu d'interêt j'en convient mais c'est pour le test et la compréhension) et après je me retrouve en db avec :
- parfois 1 père et plusieurs fils !
- parfois 1 père sans fils !
Quelqu'un aurait il la bonté de m'expliquer un petit peu ?
Merci d'avance
récupérer la valeur d'un trigger
Salut, j'ai exactement le même problème.
J'ai défini un trigger et une séquence dans ma base de donnée Oracle:
Code:
CREATE SEQUENCE ma_sequence INCREMENT BY 1;
Code:
1 2 3 4 5
| create trigger t_matable_pk
before insert on matable for each row
begin
select concat('4', ma_sequence.nextval) into :new.id from dual;
end; |
Lorsque j'utilise :
Code:
1 2 3 4 5
| <id name="id" type="long" column="person_id">
<generator class="sequence">
<param name="sequence">ma_sequence</param>
</generator>
</id> |
je récupère bien la valeur de la séquence mais pas celle du trigger.
Ma question est comment puis-je faire pour récupérer un ID unique généré par une séquence et par la concaténation d'un label (dans ce cas ci la valeur '4')?
Merci pour votre aide ;)