Jika mematikan server aplikasi menyebabkan panggilan JDBC yang mengakhiri sesi database, ini seharusnya tidak terjadi. Jika tidak menutup koneksi JDBC dengan benar, saya akan menyebutnya bug di server aplikasi. Jika ya, tetapi kueri di backend tidak dibatalkan, saya akan menyebutnya bug di driver JDBC.
Bagaimanapun, solusinya adalah mengatur tcp_keepalives_idle
ke nilai rendah sehingga server mendeteksi koneksi TCP yang mati dengan cepat dan menghentikan kueri.