The server lock manager synchronizes locking among various Oracle ATG Web Commerce servers, so only one at a time can modify the same item. At least one Oracle ATG Web Commerce server must be configured to start the /atg/dynamo/service/ServerLockManager component on application startup.

To do this, add the ServerLockManager to the initialServices property of /atg/dynamo/service/Initial in the ServerLockManager server’s configuration layer. For example:


This properties file sets the initialServices property as follows:


ServerLockManager Failover

You can configure two ServerLockManagers, where one acts as the primary lock server and the other serves as backup. The primary ServerLockManager is determined by a string comparison of two lock server property settings, lockServerAddress and lockServerPort, where the server with the lower string value is designated as the primary ServerLockManager.

On detecting failure of the primary ServerLockManager, the backup ServerLockManager takes over and clients redirect lock requests to it. If both ServerLockManagers fail, caching is disabled and all data is accessed directly from the database. Caching resumes when the one of the ServerLockManagers restarts.

ServerLockManager Properties

A ServerLockManager component is configured with the following properties:




This server’s port


The other ServerLockManager’s address


The port of the ServerLockManager specified in otherLockServerAddress


The interval in milliseconds that this server waits before polling the server specified in otherLockServerAddress


The time in milliseconds that this server waits after detecting that the primary ServerLockManager has failed, before taking over as the primary ServerLockManager

For example, given ServerLockManagers and running on port 9010, their respective configurations might look like this:

# tartini:9010
# corelli:9010
Running ServerLockManager and Page Servers

A ServerLockManager should not run in the same Oracle ATG Web Commerce instance as a page server that handles user sessions. By running the ServerLockManager in a separate Oracle ATG Web Commerce instance, the overhead of managing locks has no impact on user sessions; and the page server can restart independently of the ServerLockManager.