Si l'arrêt du serveur d'applications provoque des appels JDBC qui mettent fin à la session de base de données, cela ne devrait pas se produire. S'il ne ferme pas correctement la connexion JDBC, j'appellerais cela un bogue dans le serveur d'applications. Si c'est le cas, mais que les requêtes sur le backend ne sont pas annulées, j'appellerais cela un bogue dans le pilote JDBC.
Quoi qu'il en soit, une solution de contournement consiste à définir tcp_keepalives_idle
à une valeur faible afin que le serveur détecte rapidement les connexions TCP mortes et termine la requête.