Example usage for org.apache.hadoop.yarn.api.protocolrecords SignalContainerRequest getCommand

List of usage examples for org.apache.hadoop.yarn.api.protocolrecords SignalContainerRequest getCommand

Introduction

In this page you can find the example usage for org.apache.hadoop.yarn.api.protocolrecords SignalContainerRequest getCommand.

Prototype

@Public
@Unstable
public abstract SignalContainerCommand getCommand();

Source Link

Document

Get the SignalContainerCommand of the signal request.

Usage

From source file:io.hops.util.DBUtility.java

License:Apache License

public static void removeContainersToSignal(final Set<SignalContainerRequest> containerRequests,
        final NodeId nodeId) throws IOException {
    long start = System.currentTimeMillis();
    AsyncLightWeightRequestHandler removeContainerToSignal = new AsyncLightWeightRequestHandler(
            YARNOperationType.TEST) {//from  ww w  . j av a 2  s  . c om
        @Override
        public Object performTask() throws StorageException {
            connector.beginTransaction();
            connector.writeLock();
            ContainerToSignalDataAccess ctsDA = (ContainerToSignalDataAccess) RMStorageFactory
                    .getDataAccess(ContainerToSignalDataAccess.class);
            List<ContainerToSignal> containersToSignal = new ArrayList<ContainerToSignal>();
            for (SignalContainerRequest cr : containerRequests) {
                containersToSignal.add(new ContainerToSignal(nodeId.toString(), cr.getContainerId().toString(),
                        cr.getCommand().toString()));
            }
            ctsDA.removeAll(containersToSignal);
            connector.commit();
            return null;
        }
    };

    removeContainerToSignal.handle();
    long duration = System.currentTimeMillis() - start;
    if (duration > 10) {
        LOG.error("too long " + duration);
    }
}

From source file:io.hops.util.DBUtility.java

License:Apache License

public static void addContainerToSignal(final SignalContainerRequest containerRequest, final NodeId nodeId)
        throws IOException {
    long start = System.currentTimeMillis();
    AsyncLightWeightRequestHandler addContainerToSignal = new AsyncLightWeightRequestHandler(
            YARNOperationType.TEST) {// w  w w  .  j  a v a 2  s .  co  m
        @Override
        public Object performTask() throws StorageException {
            connector.beginTransaction();
            connector.writeLock();
            ContainerToSignalDataAccess ctsDA = (ContainerToSignalDataAccess) RMStorageFactory
                    .getDataAccess(ContainerToSignalDataAccess.class);
            ContainerToSignal containerToSignal = new ContainerToSignal(nodeId.toString(),
                    containerRequest.getContainerId().toString(), containerRequest.getCommand().toString());

            ctsDA.add(containerToSignal);
            connector.commit();
            return null;
        }
    };

    addContainerToSignal.handle();
    long duration = System.currentTimeMillis() - start;
    if (duration > 10) {
        LOG.error("too long " + duration);
    }
}