Puncte:0

Eroare java.sql.SQLNonTransientConnectionException între Glassfish 3 și MariaDB

drapel ve

Am o aplicație web Java implementată în glassfish. Această aplicație interacționează cu serverul Mariadb. Dintr-o dată, aplicația nu mai funcționează. Verific jurnalul app.log și al serverului glassfish și am următoarele rezultate:

app.log

Nu s-a putut deschide conexiunea JDBC pentru tranzacție; Excepția imbricată este java.sql.SQLNonTransientConnectionException: Nu s-a putut trimite interogarea: Ultimul pachet nu s-a terminat

server.log

### Eroarea poate exista în fișierul [/opt/glassfish3/glassfish/domains/domain1/applications/exampleApp/WEB-INF/class/model/xml/ParameterMapper.xml]
### Eroarea poate implica defaultParameterMap
### Eroarea a apărut la setarea parametrilor
### SQL: SELECTAȚI ACUM();
### Cauză: java.sql.SQLNonTransientConnectionException: Nu s-a putut trimite interogarea: Ultimul pachet nu a fost terminat
; SQL []; Nu s-a putut trimite interogarea: Ultimul pachet nu a fost terminat; excepția imbricată este java.sql.SQLNonTransientConnectionException: Nu s-a putut trimite interogarea: Ultimul pachet nu a fost terminat|#]

Aplicația repetă aceleași operațiuni de bază de date la fiecare 5 minute.

Am încercat să reîncarc aplicația de glassfish dar nu a funcționat. Singura modalitate este repornirea serverului și funcționează, dar nu pentru mult timp.

Ce se întâmplă pentru acest caz? sau ce pot face?

Puncte:0
drapel ve

Am primit răspunsul. Ceea ce am făcut a fost să schimb parametrul wait_timeout în server.cnf. Valoarea a fost 30 și am schimbat la valoarea implicită 28800. Ar putea fi setată mai mică decât 28800, dar asta este o altă problemă. Ceea ce sa întâmplat a fost că aplicația java a executat mai multe operații de inserare la fiecare 5 minute, așa că conexiunea a fost închisă de serverul Mariadb din cauza wait_timeout. Mă întreb că conexiunea DB a fost singleton și aplicația nu valida dacă conexiunea a fost închisă.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.