PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Der Jboss AS7-Verbindungspool stellt die Verbindung nicht wieder her

Eine Sache, die Sie bei der Konfiguration von jboss bedenken sollten, ist, dass manchmal die beste Dokumentation in den Projekten für die einzelnen Komponenten ist. Im Fall von Datenquelleneinstellungen rate ich den Leuten immer, sich die IronJacamar-Dokumentation anzusehen:http://www.ironjacamar.org/doc/userguide/1.0/en-US/html_single/

für das, was Sie tun möchten, sollten diese Einstellungen funktionieren:

<validation>
    <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLValidConnectionChecker"/>
    <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLExceptionSorter"/>

    <!-- I don't know what this does but someone on my DevOps 
    team said to set it this way. :) -->
    <validate-on-match>false</validate-on-match>

    <!-- validate the connection using a background 
    thread rather than right before you try to use the connection -->
    <background-validation>true</background-validation>

    <!-- sets the frequency the background thread will check each connection.
    The lower this setting, the quicker it will find a bad connection 
    but it will be more chatty sending the validations to the server -->
    <background-validation-millis>60000</background-validation-millis>

    <!-- fast fail will mark all the connections invalid as soon as 
    it finds a bad one. This will make it clear the pool quicker 
    if all connections are reset at once such as a restart. Fast 
    fail would be trouble though if you had a setup where the database
    sometimes selectively kills a single connection, such as killing long
    running queries. -->
    <use-fast-fail>true</use-fast-fail>

</validation>