Je suis confronté à une exigence particulière qui est la suivante:
Une opération réseau-intensive est déclenchée à un serveur par plusieurs clients, via une interface Web. Cependant, une seule opération est autorisée à la fois et, par conséquent, une entrée (tuple) est créée dans une table SQL pour indiquer que l'opération est en cours. Une fois l'opération terminée (indépendamment du succès ou de l'échec), le résultat approprié est affiché sur le ou les clients et le tuple correspondant est supprimé de la table SQL.
Étant donné que l'opération nécessite beaucoup de ressources, un scénario dans lequel l'opération doit être "considérée" comme devant être annulée, après un certain temps d'attente (10 minutes) doit être introduit.
Existe-t-il une façon d'associer la durée de vie d'une ligne dans SQL à une valeur de délai d'attente, de sorte qu'elle est supprimée après un certain temps? Mon application est principalement écrite en Java 1.5 et EJB 3.0, en utilisant JPA/Hibernate pour accéder au moteur de base de données Oracle 10g.Comment supprimer un tuple d'une table SQL après un timeout?
Merci d'avance.
Cordialement,
Nagendra U M
Avez-vous envisagé d'utiliser DBMS_LOCK pour acquérir un verrou nommé au lieu d'une table de base de données? –