KahaDB is a file-based persistence database used by ActiveMQ. There may be times when the ActiveMQ KahaDB database used by AFX is corrupt and needs to be recreated. Symptoms include:
AFX connectors remain in a Deployed state.
ActiveMQ will not start.
Error messages referencing kahadb are in the activemq.log file.
We have seen the KahaDB database become corrupted when the system on which the AFX server is running, runs out of disk space. This RSA Knowledge Base Article explains how to create a new KahaDB database to replace the corrupted database.
Perform the following task when there are no AFX transactions actively being processed as removing the messaging queue (KahaDB persistent database) will purge any pending items. To ensure there are no active AFX transactions being processed, the first step is to shut down AFX.
Login as the afx user.
Navigate to the directory where the ActiveMQ KahaDB database exists.
Remove the existing KahaDB database.
Restart AFX. This will create a new KahaDB database.
mv kahadb kahadb.old