In a vRealize Automation high availability environment, the Directories Management Identity Manager can fail to start after the horizon-workspace service is restarted.

Problem

The horizon-workspace service cannot start due an error similar to the following:

Error creating bean with name
  'liquibase' defined in class path resource [spring/datastore-wireup.xml]:
  Invocation of init method failed; nested exception is
  liquibase.exception.LockException: Could not acquire change log lock. Currently
  locked by fe80:0:0:0:250:56ff:fea8:7d0c%eth0
  (fe80:0:0:0:250:56ff:fea8:7d0c%eth0) since 10/29/15 

Cause

The Identity Manager might fail to start in a high availability environment because of issues with the liquibase data management utility used by vRealize Automation.

Procedure

  1. Log in as root to a console session on the vRealize Automation appliance.
  2. Stop the horizon-workspace service by entering the following command.

    #service horizon-workspace stop

  3. Open the Postgres shell as super user.

    su postgres

  4. Navigate to the correct bin directory.

    cd /opt/vmware/vpostgres/current/bin

  5. Connect to the database.

    psql vcac

  6. From saas.databasechangeloglock, run the following SQL query.

    select * from databasechangeloglock;

    If the output shows a value of "t" for true, the lock must be released manually.

  7. If you need to manually release the lock, run the following SQL query.

    update saas.databasechangeloglock" set locked=FALSE, lockgranted=NULL, lockedby=NULL where id=1;

  8. From saas.databasechangeloglock, run the following SQL query.

    select * from databasechangeloglock;

    The output should show a value of "f" for false, meaning it is unlocked.

  9. Exit the Postgres vcac database.

    vcac=# \q

  10. Close the Postgres shell.

    exit

  11. Start the horizon-workspace service.

    #service horizon-workspace start