code: @Override
    public SerializableVoid runTask(EvictConfig config, SerializableVoid args, RunTaskContext context)
        throws Exception {
      AlluxioBlockStore blockStore = AlluxioBlockStore.create(context.getFsContext());
  
      long blockId = config.getBlockId();
      String localHostName = NetworkAddressUtils.getConnectHost(ServiceType.WORKER_RPC,
          ServerConfiguration.global());
      List<BlockWorkerInfo> workerInfoList = blockStore.getAllWorkers();
      WorkerNetAddress localNetAddress = null;
  
      for (BlockWorkerInfo workerInfo : workerInfoList) {
        if (workerInfo.getNetAddress().getHost().equals(localHostName)) {
          localNetAddress = workerInfo.getNetAddress();
          break;
        }
      }
      if (localNetAddress == null) {
        String message = String.format("Cannot find a local block worker to evict block %d", blockId);
        throw new NotFoundException(message);
      }
  
      RemoveBlockRequest request = RemoveBlockRequest.newBuilder().setBlockId(blockId).build();
      BlockWorkerClient blockWorker = null;
      try {
        blockWorker = context.getFsContext().acquireBlockWorkerClient(localNetAddress);
        blockWorker.removeBlock(request);
      } catch (NotFoundException e) {
        // Instead of throwing this exception, we continue here because the block to evict does not
        // exist on this worker anyway.
        LOG.warn("Failed to delete block {} on {}: block does not exist", blockId, localNetAddress);
      } finally {
        if (blockWorker != null) {
          context.getFsContext().releaseBlockWorkerClient(localNetAddress, blockWorker);
        }
      }
      return null;
    }
docs: {@inheritDoc}
  
  This task will evict the given block.