public CliFunctionResult execute(Callable<CliFunctionResult> callable,
      String regionName, String senderId) throws InterruptedException, ExecutionException,
      WanCopyRegionFunctionServiceAlreadyRunningException {
    String executionName = getExecutionName(regionName, senderId);
    Future<CliFunctionResult> future = null;
    try {
      synchronized (executions) {
        if (executions.containsKey(executionName)) {
          throw new WanCopyRegionFunctionServiceAlreadyRunningException(
              "There is already an execution running for " + regionName + " and " + senderId);
        }
        future = wanCopyRegionFunctionExecutionPool.submit(callable);
        executions.put(executionName, future);
      }
      return future.get();
    } finally {
      if (future != null) {
        executions.remove(executionName);
      }
    }
  }
Contains the ongoing executions of WanCopyRegionFunction
geode-wan/src/main/java/org/apache/geode/cache/wan/internal/WanCopyRegionFunctionService.java