private boolean releaseLock(InternalDistributedMember member, int lockId) {
      if (lockId == -1) {
        return false;
      }
      checkDestroyed();

      if (isLeaseHeldBy(member, lockId)) {
        if (logger.isTraceEnabled(LogMarker.DLS_VERBOSE)) {
          logger.trace(LogMarker.DLS_VERBOSE,
              "[DLockGrantToken.releaseLock] releasing ownership: {}", this);
        }

        lessee = null;
        leaseId = -1;
        lesseeThread = null;
        leaseExpireTime = -1;

        return true;
      }
      if (logger.isTraceEnabled(LogMarker.DLS_VERBOSE)) {
        logger.trace(LogMarker.DLS_VERBOSE,
            "[DLockGrantToken.releaseLock] {} attempted to release: {}", member, this);
      }
      return false;
    }
Called by the grantor. Releases lock on this token if it is currently locked by the specified
member and lockId.
<p>
Caller must synchronize on this grant token.

@param member the member to release the lock from
@param lockId the lock id that the member used when locking
@return true if lock was released guarded.By this
geode-core/src/main/java/org/apache/geode/distributed/internal/locks/DLockGrantor.java