When the broker is started with the store module loaded, the store module will open the BDB database in the data directory (which is by default whatever the broker has selected for --data-dir). The BDB files are located under rhm/dat/ within this directory. In recent testing, it has been observed that if BDB is upgraded, or the store directory from one version of BDB is used by another version, then the broker will fail to start. One of the most commonly observed error messages is the following: Database handles still open at environment close Error opening environment (BdbMessageStore.cpp:144): DbEnv::open: Invalid argument If this should occur, then the following is suggested: If recovery is not important (i.e. there are no messages or queues that need to be restored on startup), then simply delete the database and journal (if it exists) in the store directory. The broker will create a new one when it starts. This is most easily done with a command such as "rm -rf /var/lib/qpidd/rhm", where /var/lib/qpidd is the data directory; adjust if you are using a different path for the data directory. If recovery is important, then it will be necessary to run the db_recover utility against the database. This requires that the db4-utils package is installed; as root, run "yum install db4-utils" to do this.
https://engineering.redhat.com/docbot/en-US/Red_Hat_Enterprise_MRG/1.0/html/MRG_Release_Notes/chap-MRG_Release_Notes-Known_Issues.html LKB