When you shut down a database server node (that is, jadrap or jadserv) and there are database transactions still in progress, these incomplete transactions must be aborted.
You can determine whether transactions are in progress by using the JADE Monitor.
The server control program waits up to 45 seconds for each server thread to terminate. However, a server thread may be processing a lengthy operation such as returning deleted object space to the freespace index, which may take longer than 45 seconds to complete in some situations.
If the server control program finalizes the database while a user updating operation is still in progress, it is not safe to continue and a fatal exception is raised, resulting in the abrupt termination of the database server. Subsequent restart recovery will undo the incomplete transaction.
When this scenario is detected, the following messages are recorded in the jommsg.log file.
PDB:clearing active user: [3] <user3> during finalise PDB:user: [3] <user3> has active thread in database engine PDB:*** unexpected sign off while database operation still active for [3] user3 PDB:*** thread state not known, database server must terminate to force restart recovery PDB:*** Terminating process now .......
In the simple case when the database is finalized and users have been left signed on with incomplete transactions but they do not have pending update operations in progress, the following messages are recorded in the jommsg.log file.
PDB: clearing active user: [6] <user6> during finalise PDB: [6] <user6> unexpected sign off while in transaction state PDB: [6] <user6> aborting overflowed transaction 1293682...
In this situation, if the transaction abort is allowed to complete, the database will be closed normally.