KB-1079 "ERROR GW1 restarted X times" error thrown for one or more engines in the checkengine script


After running checkengine.bat|sh, users will notice the following error appear in the console window for one or more engines:

ERROR    GW1 restarted X times
ERROR    GW2 restarted Y times

Per the error, an unexpected restart is shown in the gw_*.log corresponding to the engine with the error:

[XXX] INFO .a.gw "State transition from [STANDALONE] to [DISCONNECTED]"
[XXX] INFO .a.gw.ssd "Connected to server"
[XXX] INFO .a.gw "State transition from [DISCONNECTED] to [ACTIVE JOIN]"
[XXX] INFO .a.gw.swj "No other gateways configured, switching to [STANDALONE]"
[XXX] INFO .a.gw "State transition from [ACTIVE JOIN] to [STANDALONE]"

Around the same time, the following lines are printed in the db_*.log corresponding to the engine with the error:

[XXX] {XXX.kdb 2527999} (Default) ERROR .a.s.loader "Failed to append transaction to DB ("XXX.kdb: The handle is invalid."), will delay one second and retry once."
[XXX] {XXX.kdb 2527999} (Default) ERROR .a.s.loader "Retry failed: "XXX.kdb: The handle is invalid.""


The gateway has restarted because another program on the engine server machine is trying to use or make changes to the KDB file specified in the error. Examples of such applications that would do this include (but are not limited to) backup software, antivirus software, and IDS.


Disable any application attempting to use or make changes to the KDB files (or simply remove the KDB files from the scope of those applications) and restart the Appian platform as prescribed in Starting and Stopping Appian.

Affected Versions

This article applies to all versions of Appian.

Last Reviewed: February 2017