Bonjour,
J'étudie la question de l'implémentation d'un pessimistic lock dans une application web dont la stratégie est un session-per-request.
Il n'est évidemment pas question de changer la gestion de la session.
J'ai déjà implémenté un optimistic lock avec un field version afin de savoir si des sauvegardes du record ont été effectuées après le load en DB.
Mais j'aimerais maintenant implémenter un mécanisme qui empèche un utilisateur d'accéder à un mode d'édition de l'application web si un autre utilisateur est déjà en train de modifier le record.
Je pourrais donc a priori utiliser le UPGRADE_NOWAIT, mais ceci ne fonctionne que pour une transaction. Or il s'agit ici de gérer plusieurs transactions et pour plusieurs utilisateurs...
Pour faire encore plus simple, cela doit fonctionner sur Oracle ET DB2 (notez qu'il y a déjà des différences à ce points de vue voir post ici
Ma question est donc : est-ce possible avec les fonctionnalités de base Hibernate ou dois-je moi même implémenter ce système "manuellement" avec un field qui contiendrait l'utilisateur qui effectue une modification ainsi qu'un timeout etc... ?? cela devient vite lourd à gérer mais au moins cela devient portable plus facilement sur Oracle et DB2
Est-ce que quun à déjà implémenté ce système ?
Merci a vous
Partager