protected void clearUniqueFindersCache(Shard shard) {
    ShardModelImpl shardModelImpl = (ShardModelImpl) shard;

    Object[] args = new Object[] {shard.getName()};

    FinderCacheUtil.removeResult(FINDER_PATH_COUNT_BY_NAME, args);
    FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_NAME, args);

    if ((shardModelImpl.getColumnBitmask() & FINDER_PATH_FETCH_BY_NAME.getColumnBitmask()) != 0) {
      args = new Object[] {shardModelImpl.getOriginalName()};

      FinderCacheUtil.removeResult(FINDER_PATH_COUNT_BY_NAME, args);
      FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_NAME, args);
    }

    args = new Object[] {shard.getClassNameId(), shard.getClassPK()};

    FinderCacheUtil.removeResult(FINDER_PATH_COUNT_BY_C_C, args);
    FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_C_C, args);

    if ((shardModelImpl.getColumnBitmask() & FINDER_PATH_FETCH_BY_C_C.getColumnBitmask()) != 0) {
      args =
          new Object[] {
            shardModelImpl.getOriginalClassNameId(), shardModelImpl.getOriginalClassPK()
          };

      FinderCacheUtil.removeResult(FINDER_PATH_COUNT_BY_C_C, args);
      FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_C_C, args);
    }
  }