" java.sql.SQLException: The database is already in use by another process: lockFile: org.hsqldb.persist.LockFile".

" java.sql.SQLException: The database is already in use by another process: lockFile: org.hsqldb.persist.LockFile".

book

Article ID: KB0085986

calendar_today

Updated On:

Products Versions
TIBCO ActiveMatrix Policy Director -
Not Applicable -

Description

Resolution:
Description
===========
You may see this error with EARs containing more than one process archive. Currently, the BW Governance Agent does not handle deployments with multiple process archives in a single EAR. Multiple engines end up attempting to use the same copy of the agent DB and throw the above error. A change request PD-3600 has been opened for this issue.

Environment
===========
All supported environments of the product.

Workaround
===========
There are two workarounds for this issue currently and you can choose one which is most comfortable for your infrastructure/environment/ear complexity levels.

 1). Create multiple EARs so that EAR to PAR is a 1-1 relation.

You would have to open TIBCO Designer and create multiple EARs and assign unique PARs for each EAR. Deploying them will create separate working structures for each EAR and the governance agent.


 2). Change the bwengine.xml and add a property so that the engine directory can be set individually at the par level for each ear. You would have to change the bwengine.xml and add a new property:
 
<property>
           <name>Engine.Dir</name>
           <option>Engine.Dir</option>
           <default>c:\temp\</default>
           <description></description>
</property>

Recreate the ear in Designer. On deployment of the ear, click on individual par and go to the advanced options and set a desired path. Note that it is advised to keep the path as the default workarea +par name for ease of identification across pars. Do the change for all pars in the ear and then save, apply and deploy the ear.

Issue/Introduction

" java.sql.SQLException: The database is already in use by another process: lockFile: org.hsqldb.persist.LockFile".