You are currently reviewing an older revision of this page.

Database calls fail with "Connection has already been closed" in tomcat logs

Symptoms

Calls to the database from app server fail after an upgrade or migration. 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.

Cause

 Databases have a default timeout period after which it terminates idle connections, causing app server to not be able to make calls to the database.

Action

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

Affected Versions

This article applies to Appian 19.1 and later.

Last Reviewed: June 2020