Critical: iDempiere Database Connection Issue - HikariPool-1 Failed to validate connection

7 views
Skip to first unread message

Shwetha Reddy

unread,
2:31 AM (13 hours ago) 2:31 AM
to idem...@googlegroups.com
Hello Community,

We are encountering a critical database connection issue in our iDempiere environment. The system is throwing an "IllegalStateException: DB.createConnection - @NoDBConnection@" and HikariPool is failing to validate connections.

Error Logs:
- PoolBase.isConnectionDead: HikariPool-1 - Failed to validate connection (This connection has been closed.)
- java.lang.IllegalStateException: DB.createConnection - @NoDBConnection@
- org.adempiere.exceptions.DBException: java.lang.IllegalStateException: DB.createConnection - No Database Connection

Detail Error : 05:15:33.579-----------> PoolBase.isConnectionDead: HikariPool-1 - Failed to validate connection org.postgresql.jdbc.PgConnection@548531bc (This connection has been closed.). Possibly consider using a shorter maxLifetime value. [10227]
05:15:43.591-----------> PoolBase.isConnectionDead: HikariPool-1 - Failed to validate connection org.postgresql.jdbc.PgConnection@ab9c610 (This connection has been closed.). Possibly consider using a shorter maxLifetime value. [10227]
05:15:53.603-----------> PoolBase.isConnectionDead: HikariPool-1 - Failed to validate connection org.postgresql.jdbc.PgConnection@23a4883 (This connection has been closed.). Possibly consider using a shorter maxLifetime value. [10227]
05:16:03.615-----------> PoolBase.isConnectionDead: HikariPool-1 - Failed to validate connection org.postgresql.jdbc.PgConnection@1058bc0 (This connection has been closed.). Possibly consider using a shorter maxLifetime value. [10227]
05:16:13.627-----------> PoolBase.isConnectionDead: HikariPool-1 - Failed to validate connection org.postgresql.jdbc.PgConnection@52973cd5 (This connection has been closed.). Possibly consider using a shorter maxLifetime value. [10227]
05:16:23.635-----------> PoolBase.isConnectionDead: HikariPool-1 - Failed to validate connection org.postgresql.jdbc.PgConnection@78cff160 (This connection has been closed.). Possibly consider using a shorter maxLifetime value. [10227]
05:16:33.648-----------> PoolBase.isConnectionDead: HikariPool-1 - Failed to validate connection org.postgresql.jdbc.PgConnection@59b4bcb6 (This connection has been closed.). Possibly consider using a shorter maxLifetime value. [10227]
05:16:43.660-----------> PoolBase.isConnectionDead: HikariPool-1 - Failed to validate connection org.postgresql.jdbc.PgConnection@420eb46f (This connection has been closed.). Possibly consider using a shorter maxLifetime value. [10227]
05:16:53.672-----------> PoolBase.isConnectionDead: HikariPool-1 - Failed to validate connection org.postgresql.jdbc.PgConnection@7e307daa (This connection has been closed.). Possibly consider using a shorter maxLifetime value. [10227]
05:17:03.684-----------> PoolBase.isConnectionDead: HikariPool-1 - Failed to validate connection org.postgresql.jdbc.PgConnection@6480af4a (This connection has been closed.). Possibly consider using a shorter maxLifetime value. [10227]
05:16:23.636===========> PreparedStatementProxy.init: SELECT AD_Language FROM AD_Language WHERE IsActive='Y' AND IsLoginLocale = 'Y' [10227]
java.lang.IllegalStateException: DB.createConnection - @NoDBConnection@
	at org.compiere.util.DB.createConnection(DB.java:453)
	at org.idempiere.db.util.AutoCommitConnectionBroker.getConnection(AutoCommitConnectionBroker.java:49)
	at org.compiere.db.PreparedStatementProxy.init(PreparedStatementProxy.java:91)
	at org.compiere.db.PreparedStatementProxy.<init>(PreparedStatementProxy.java:52)
	at org.compiere.db.ProxyFactory.newCPreparedStatement(ProxyFactory.java:54)
	at org.compiere.util.DB.prepareStatement(DB.java:750)
	at org.compiere.util.DB.prepareStatement(DB.java:708)
	at org.compiere.util.Env.getLoginLanguages(Env.java:1272)
	at com.akst.webui.panel.LoginPanel.initComponents(LoginPanel.java:519)
	at com.akst.webui.panel.LoginPanel.<init>(LoginPanel.java:129)
	at com.akst.webui.window.LoginWindow.createLoginPanel(LoginWindow.java:83)
	at com.akst.webui.window.LoginWindow.initComponents(LoginWindow.java:79)
	at com.akst.webui.window.LoginWindow.init(LoginWindow.java:69)
	at org.adempiere.webui.WLogin.doCreatePart(WLogin.java:77)
	at org.adempiere.webui.part.AbstractUIPart.createPart(AbstractUIPart.java:54)
	at org.adempiere.webui.AdempiereWebUI.onCreate(AdempiereWebUI.java:195)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.zkoss.zk.ui.AbstractComponent.service(AbstractComponent.java:3172)

05:17:03.688===========> UiEngineImpl.handleError:  [10227]
org.adempiere.exceptions.DBException: java.lang.IllegalStateException: DB.createConnection - No Database Connection
	at org.compiere.db.PreparedStatementProxy.init(PreparedStatementProxy.java:105)
	at org.compiere.db.PreparedStatementProxy.<init>(PreparedStatementProxy.java:52)
	at org.compiere.db.ProxyFactory.newCPreparedStatement(ProxyFactory.java:54)
	at org.compiere.util.DB.prepareStatement(DB.java:750)
	at org.compiere.util.DB.prepareStatement(DB.java:708)
	at org.compiere.util.Env.getLoginLanguages(Env.java:1272)
	at com.akst.webui.panel.LoginPanel.initComponents(LoginPanel.java:519)
	at com.akst.webui.panel.LoginPanel.<init>(LoginPanel.java:129)
	at com.akst.webui.window.LoginWindow.createLoginPanel(LoginWindow.java:83)
	at com.akst.webui.window.LoginWindow.initComponents(LoginWindow.java:79)
	at com.akst.webui.window.LoginWindow.init(LoginWindow.java:69)
	at org.adempiere.webui.WLogin.doCreatePart(WLogin.java:77)
	at org.adempiere.webui.part.AbstractUIPart.createPart(AbstractUIPart.java:54)
	at org.adempiere.webui.AdempiereWebUI.onCreate(AdempiereWebUI.java:195)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.zkoss.zk.ui.AbstractComponent.service(AbstractComponent.java:3172)
	at org.zkoss.zk.ui.AbstractComponent.service(AbstractComponent.java:3103)
	at org.zkoss.zk.ui.impl.EventProcessor.process(EventProcessor.java:138)
caused by: java.lang.IllegalStateException: DB.createConnection - @NoDBConnection@
	at org.compiere.util.DB.createConnection(DB.java:453)
	at org.idempiere.db.util.AutoCommitConnectionBroker.getConnection(AutoCommitConnectionBroker.java:49)
	at org.compiere.db.PreparedStatementProxy.init(PreparedStatementProxy.java:91)
	at org.compiere.db.PreparedStatementProxy.<init>(PreparedStatementProxy.java:52)
	at org.compiere.db.ProxyFactory.newCPreparedStatement(ProxyFactory.java:54)
	at org.compiere.util.DB.prepareStatement(DB.java:750)
	at org.compiere.util.DB.prepareStatement(DB.java:708)
	at org.compiere.util.Env.getLoginLanguages(Env.java:1272)
	at com.akst.webui.panel.LoginPanel.initComponents(LoginPanel.java:519)
	at com.akst.webui.panel.LoginPanel.<init>(LoginPanel.java:129)
	at com.akst.webui.window.LoginWindow.createLoginPanel(LoginWindow.java:83)
	at com.akst.webui.window.LoginWindow.initComponents(LoginWindow.java:79)
	at com.akst.webui.window.LoginWindow.init(LoginWindow.java:69)
	at org.adempiere.webui.WLogin.doCreatePart(WLogin.java:77)
	at org.adempiere.webui.part.AbstractUIPart.createPart(AbstractUIPart.java:54)
	at org.adempiere.webui.AdempiereWebUI.onCreate(AdempiereWebUI.java:195)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.zkoss.zk.ui.AbstractComponent.service(AbstractComponent.java:3172)


The error occurs during the login process (Env.getLoginLanguages) when trying to initialize the PreparedStatement for AD_Language.

Could you please provide guidance on how to resolve this? We are considering adjusting the maxLifetime value as suggested in the logs, but wanted to check if there are other known causes for this in a PostgreSQL setup.

Thank you for your support.

Carlos Antonio Ruiz Gomez

unread,
7:41 AM (7 hours ago) 7:41 AM
to idem...@googlegroups.com


Which iDempiere version?
Which operating system?
Does it happen just at restart or after some time?
Does it happen after some event, some custom process for example?
How many connections appear open in your database when this happens?
What is in the postgresql logs?
--

Reply all
Reply to author
Forward
0 new messages