AW: IdPv3: Verbindung zur Datenbank unterbrochen?

Dach Steffen Steffen.Dach at hrz.tu-freiberg.de
Fr Feb 3 11:31:24 CET 2017


Hallo!

 

Ja, interessanterweise hatten wir den Fehler zuletzt bei uns auch in
Verbindung mit MySQL.

Statt wie im DFN-Wiki beschrieben:

 

<bean id="shibboleth.MySQLDataSource"

          class="%{mysql.class}"

          p:driverClassName="com.mysql.jdbc.Driver"

          p:url="%{mysql.url}"

          p:username="%{mysql.username}"

          p:password="%{mysql.password}"

          p:maxWait="15000"

          p:validationQuery="select 1"

          p:validationQueryTimeout="0" />

 

haben wir die Konfiguration in der global.xml um einige Parameter erweitert:

(siehe auch
https://wiki.shibboleth.net/confluence/display/IDP30/BeanManagedConnection)

 

p:testOnBorrow="true"

p:maxActive="10"

p:maxIdle="5"

 

sowie maxWait den Timeout angepasst:

 

<bean id="shibboleth. MySQLDataSource "

          class="org.apache.tomcat.jdbc.pool.DataSource"

          p:driverClassName="com.mysql.jdbc.Driver"

          p:url= XXXXXXXX

          p:username=XXXXXXXX

          p:password= XXXXXXXX

          p:maxActive="10"

          p:maxIdle="5"

          p:maxWait="2000"

          p:testOnBorrow="true"

          p:validationQuery="select 1"

          p:validationQueryTimeout="5"/>

 

Das hat’s bei uns gelöst :)

 

Viele Grüße aus Freiberg

 

Steffen Dach

 

-----

TU Bergakademie Freiberg

 

M.Sc. Steffen Dach

Abteilung  Verwaltungsapplikationen

Universitätsrechenzentrum

Bernhard-von-Cotta-Straße 1, Zi. 4.05

D-09599 Freiberg

 

Telefon: 03731/39-3086

E-Mail:  <mailto:Steffen.Dach at hrz.tu-freiberg.de>
Steffen.Dach at hrz.tu-freiberg.de

Webseite: http://tu-freiberg.de/urz

 

Von: Aai-users [mailto:aai-users-bounces at aai.dfn.de] Im Auftrag von
Krinetzki, Stephan
Gesendet: Freitag, 3. Februar 2017 11:04
An: aai-users at aai.dfn.de
Betreff: IdPv3: Verbindung zur Datenbank unterbrochen?

 

Hallo Liste,

 

wir haben seit kurzem unseren Session Storage auf MariaDB umgstellt, welches
in einem Galera Cluster läuft (Master-Master Synchronistation). Das läuft
prinzipiell auch, aber irgendwie kommt es nach X Stunden zu folgenden
Meldungen im Log:

 

2017-02-03 00:02:49,897 - ERROR
[org.opensaml.storage.impl.JPAStorageService:180] - IP:XXX.XXX.XXX.XXX |
Error creating record '_session' in context 'xxx' with expiration 'xxx'

javax.persistence.PersistenceException: org.hibernate.TransactionException:
JDBC begin transaction failed: 

        at
org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManage
rImpl.java:1763)

Caused by: org.hibernate.TransactionException: JDBC begin transaction
failed: 

        at
org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.doBegin(JdbcT
ransaction.java:76)

Caused by: java.sql.SQLNonTransientConnectionException: (conn:25) Connection
is close

        at
org.mariadb.jdbc.internal.util.ExceptionMapper.get(ExceptionMapper.java:132)

Caused by: org.mariadb.jdbc.internal.util.dao.QueryException: Connection is
close

        at
org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.cmdPrologue(Abstrac
tQueryProtocol.java:1275)

2017-02-03 00:02:49,904 - ERROR
[net.shibboleth.idp.session.impl.StorageBackedSessionManager:527] -
IP:XXX.XXX.XXX.XXX | Exception while storing new session for principal
xxxxxxxx

java.io.IOException: javax.persistence.PersistenceException:
org.hibernate.TransactionException: JDBC begin transaction failed: 

        at
org.opensaml.storage.impl.JPAStorageService.create(JPAStorageService.java:18
2)

Caused by: javax.persistence.PersistenceException:
org.hibernate.TransactionException: JDBC begin transaction failed: 

        at
org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManage
rImpl.java:1763)

Caused by: org.hibernate.TransactionException: JDBC begin transaction
failed: 

        at
org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.doBegin(JdbcT
ransaction.java:76)

Caused by: java.sql.SQLNonTransientConnectionException: (conn:25) Connection
is close

        at
org.mariadb.jdbc.internal.util.ExceptionMapper.get(ExceptionMapper.java:132)

Caused by: org.mariadb.jdbc.internal.util.dao.QueryException: Connection is
close

        at
org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.cmdPrologue(Abstrac
tQueryProtocol.java:1275)

2017-02-03 00:02:49,911 - ERROR
[net.shibboleth.idp.session.impl.UpdateSessionWithAuthenticationResult:178]
- IP:XXX.XXX.XXX.XXX | Profile Action UpdateSessionWithAuthenticationResult:
Error creating session for principal xxxxxxxxxxxx

net.shibboleth.idp.session.SessionException: Exception while storing new
session

        at
net.shibboleth.idp.session.impl.StorageBackedSessionManager.createSession(St
orageBackedSessionManager.java:529)

Caused by: java.io.IOException: javax.persistence.PersistenceException:
org.hibernate.TransactionException: JDBC begin transaction failed: 

        at
org.opensaml.storage.impl.JPAStorageService.create(JPAStorageService.java:18
2)

Caused by: javax.persistence.PersistenceException:
org.hibernate.TransactionException: JDBC begin transaction failed: 

        at
org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManage
rImpl.java:1763)

Caused by: org.hibernate.TransactionException: JDBC begin transaction
failed: 

        at
org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.doBegin(JdbcT
ransaction.java:76)

Caused by: java.sql.SQLNonTransientConnectionException: (conn:25) Connection
is close

        at
org.mariadb.jdbc.internal.util.ExceptionMapper.get(ExceptionMapper.java:132)

Caused by: org.mariadb.jdbc.internal.util.dao.QueryException: Connection is
close

        at
org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.cmdPrologue(Abstrac
tQueryProtocol.java:1275)

 

Nach einem Neustart der Tomcat Instanz läuft es wieder problemlos. Hat einer
von euch eine Idee, warum Shibboleth urplötzlich die Verbindung zur
Datenbank abbricht? Der Datenbank Server ist aber die ganze Zeit aktiv.

 

Grüße aus Aachen

 

Stephan

 

--

Stephan Krinetzki

Fachinformatiker

 

IT Center

Abteilung: Systeme und Betrieb

RWTH Aachen University

Seffenter Weg 23

52074 Aachen

Tel: +49 241 80-24866

Fax: +49 241 80-22134

 

-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <http://listserv.aai.dfn.de/pipermail/aai-users/attachments/20170203/6d629b41/attachment-0001.html>
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : smime.p7s
Dateityp    : application/pkcs7-signature
Dateigröße  : 6441 bytes
Beschreibung: nicht verfügbar
URL         : <http://listserv.aai.dfn.de/pipermail/aai-users/attachments/20170203/6d629b41/attachment-0001.bin>


Mehr Informationen über die Mailingliste Aai-users