Always implement explicit database connection validation strategies to ensure robust application behavior during startup and runtime. This includes:

  1. Configure validation queries with appropriate timeouts:
    quarkus.datasource.jdbc.validation-query-timeout=3
    quarkus.datasource.jdbc.validation-query=SELECT 1
    quarkus.datasource.jdbc.validate-on-borrow=true
    
  2. Control database connectivity during startup:
    # Avoid unnecessary database connections during startup
    quarkus.hibernate-orm.database.start-offline=true
    
  3. Implement connection validation in critical paths: ```java @Inject AgroalDataSource dataSource;

public void validateConnection() throws SQLException { try (Connection conn = dataSource.getConnection()) { // Execute validation query try (Statement stmt = conn.createStatement()) { stmt.setQueryTimeout(3); stmt.execute(“SELECT 1”); } } } ```

This approach:

Consider implementing these validations in health checks and critical service initialization points.