{"record":{"id":"f0446c7d0735bb5d","repo":"hibernate/hibernate-orm","slug":"provider-is-closed","errorCode":null,"errorMessage":"Provider is closed","messagePattern":"Provider is closed","errorType":"exception","errorClass":"HibernateException","httpStatus":null,"severity":"error","filePath":"hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DataSourceConnectionProvider.java","lineNumber":148,"sourceCode":"\t\t\t\t\tDataSourceConnectionProvider.class );\n\t\t}\n\n\t\tuser = (String) configuration.get( JdbcSettings.USER );\n\t\tpass = (String) configuration.get( JdbcSettings.PASS );\n\t\tuseCredentials = user != null || pass != null;\n\t\tavailable = true;\n\t}\n\n\t@Override\n\tpublic void stop() {\n\t\tavailable = false;\n\t\tdataSource = null;\n\t}\n\n\t@Override\n\tpublic Connection getConnection() throws SQLException {\n\t\tif ( !available ) {\n\t\t\tthrow new HibernateException( \"Provider is closed\" );\n\t\t}\n\t\treturn useCredentials ? dataSource.getConnection( user, pass ) : dataSource.getConnection();\n\t}\n\n\t@Override\n\tpublic Connection getConnection(String user, String password) throws SQLException {\n\t\tif ( !available ) {\n\t\t\tthrow new HibernateException( \"Provider is closed\" );\n\t\t}\n\t\treturn dataSource.getConnection( user, password );\n\t}\n\n\t@Override\n\tpublic void closeConnection(Connection connection) throws SQLException {\n\t\tconnection.close();\n\t}\n\n\t@Override","sourceCodeStart":130,"sourceCodeEnd":166,"githubUrl":"https://github.com/hibernate/hibernate-orm/blob/fad1729dce015f908198d57a8d80274a30f905a5/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DataSourceConnectionProvider.java#L130-L166","documentation":"Error \"Provider is closed\" thrown in hibernate/hibernate-orm.","triggerScenarios":"Thrown at hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DataSourceConnectionProvider.java:148 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Do not request connections after the provider/SessionFactory has been closed","Create a new SessionFactory instead of reusing a closed one"],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"fad1729dce015f908198d57a8d80274a30f905a5","analyzedAt":"2026-08-22T04:13:57.527Z","schemaVersion":2},"datasetVersion":"2026-08-22T09:17:25.309Z"}