code: protected void removeLock(String nodeIdentifier)
     {
        try
        {
           NodeData nData = (NodeData)dataManager.getItemData(nodeIdentifier);
  
           //Skip removing, because that node was removed in other node of cluster.  
           if (nData == null)
           {
              return;
           }
  
           PlainChangesLog changesLog =
              new PlainChangesLogImpl(new ArrayList<ItemState>(), IdentityConstants.SYSTEM, ExtendedEvent.UNLOCK);
  
           ItemData lockOwner =
              copyItemData((PropertyData)dataManager.getItemData(nData, new QPathEntry(Constants.JCR_LOCKOWNER, 1),
                 ItemType.PROPERTY));
  
           //Skip removing, because that lock was removed in other node of cluster.  
           if (lockOwner == null)
           {
              return;
           }
  
           changesLog.add(ItemState.createDeletedState(lockOwner));
  
           ItemData lockIsDeep =
              copyItemData((PropertyData)dataManager.getItemData(nData, new QPathEntry(Constants.JCR_LOCKISDEEP, 1),
                 ItemType.PROPERTY));
  
           //Skip removing, because that lock was removed in other node of cluster.  
           if (lockIsDeep == null)
           {
              return;
           }
  
           changesLog.add(ItemState.createDeletedState(lockIsDeep));
  
           // lock probably removed by other thread
           if (lockOwner == null && lockIsDeep == null)
           {
              return;
           }
  
           dataManager.save(new TransactionChangesLog(changesLog));
        }
        catch (JCRInvalidItemStateException e)
        {
           //Skip property not found in DB, because that lock property was removed in other node of cluster.
           if (LOG.isDebugEnabled())
           {
              LOG.debug("The propperty was removed in other node of cluster.", e);
           }
  
        }
        catch (RepositoryException e)
        {
           LOG.error("Error occur during removing lock" + e.getLocalizedMessage(), e);
        }
     }
docs: Remove lock, used by Lock remover.
  
  @param nodeIdentifier String