Est-ce que le cache de niveau 2 Mise en veille prolongée invalidate lors de l'exécution d'une déclaration de mise à jour JPQL

StackOverflow https://stackoverflow.com/questions/2023857

  •  19-09-2019
  •  | 
  •  

Question

Lorsque vous exécutez une mise à jour de JPQL ou de supprimer la requête, est Hibernate assez intelligent pour invalider le cache de niveau 2 pour l'entité qui a changé?

Contrived exemple:

Vous avez le JPQL:

update Product p set p.status = 'S' where p.name like 'Monitor%'

Si vous avez actuellement des produits dans le cache de niveau 2 lorsque cette instruction est exécutée, cela signifie que Hibernate annule tous les produits à partir du cache ou est-il rien dans le cache et les produits dans le cache de niveau 2 sont désormais invalides?

Juste Pour votre information ... J'utilise JBoss 5.1 avec mise en veille prolongée et JBossCache

Était-ce utile?

La solution

Après avoir exécuté mon propre test et en cours d'exécution à travers ce bug il semble qu'il annule le cache de second niveau, pas seulement le cache de second niveau pour toutes les entités impliquées dans la mise à jour.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top