You are currently reviewing an older revision of this page.

Database calls fail with "Connection has already been closed" for on-premise installations


Calls to the database from the app server fail after an upgrade or migration for an on-premise installation. The following error can be seen in the application server log:

ERROR org.hibernate.transaction.JDBCTransaction - Could not toggle autocommit
java.sql.SQLException: Connection has already been closed.


Databases have a default timeout period after which idle connections are terminated, causing the app server to be unable to make calls to the database.


Increase the value of  removeAbandonedTimeOut in tomcat-resources.xml.

Affected Versions

This article applies to Appian 19.1 and later.

Last Reviewed: June 2020