6

Is it possible to run the Content Engine Device Database update process on a standalone server for all the HSQL DB instances?

The scenario is that app servers in the DMZ cannot initiate outside requests. The preferred approach in this scenario would be to have the job run on a separate server which would update a common HSQL DB instance, e.g. on a shared network mount point. So this leads to the question of: Is it possible to configure the HSQL DB file path location in the Content Engine Cartridge?

I have looked in the SDL Live Docs and can't find anything to this regard. I've also checked the sample cwd_engine_cartridge_conf.xml for hints. What I found is a ConfigProviderClass specification here, so I'm wondering if there are some configs we can override, e.g. the HSQL DB connection string or network location path of it:

  <ClaimProcessorDefinitions>
        <ClaimProcessorDefinition Uri="tcd:claimprocessor:cwd:context"
            ImplementationClass="com.sdl.context.ambient.ContextEngineClaimProcessor"
            ConfigProviderClass="com.sdl.context.ambient.ContextEngineClaimProcessorConfigProvider"/>
  </ClaimProcessorDefinitions>

1 Answer 1

2

Yes. You can maintain your Device Repository from a machine with internet access, and simply copy the repository to wherever it is needed.

There is an undocumented Java system property that can be used to modify the location of the repository:

repository.location

There is also a boolean property that determines whether the repository is read only (by default yes):

repository.readOnly

Note that the Context Engine will create a lock on the HSQL database when in read/write, so you may have issues if you try and share the same repository amongst multiple instances in such configurations.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.