public void releaseWorkerResource(RpcController controller,
TajoMasterProtocol.WorkerResourceReleaseRequest request,
RpcCallback<PrimitiveProtos.BoolProto> done) {
List<TajoMasterProtocol.WorkerResourceProto> workerResources = request.getWorkerResourcesList();
for(TajoMasterProtocol.WorkerResourceProto eachWorkerResource: workerResources) {
WorkerResource workerResource = new WorkerResource();
String[] tokens = eachWorkerResource.getWorkerHostAndPort().split(":");
workerResource.setAllocatedHost(tokens[0]);
workerResource.setPeerRpcPort(Integer.parseInt(tokens[1]));
workerResource.setMemoryMBSlots(eachWorkerResource.getMemoryMBSlots());
workerResource.setDiskSlots(eachWorkerResource.getDiskSlots());
LOG.info("releaseWorkerResource:" + workerResource);
context.getResourceManager().releaseWorkerResource(
new QueryId(eachWorkerResource.getExecutionBlockId().getQueryId()),
workerResource);