Buggy code:
class HostControllerUpdateTask { private final String name ; private final ModelNode operation ; private final OperationContext context ; private final TransformingProxyController proxyController ; public HostControllerUpdateTask ( final String name , final ModelNode operation , final OperationContext context , final TransformingProxyController proxyController ) { } public HostControllerUpdateTask . ExecutedHostRequest execute ( final HostControllerUpdateTask . ProxyOperationListener listener ) { } static class ProxyOperation extends TransactionalOperationImpl { private final String name ; protected ProxyOperation ( final String name , final ModelNode operation , final OperationMessageHandler messageHandler , final OperationAttachments attachments ) { } public String getName ( ) { } } static class ExecutedHostRequest implements OperationRejectionPolicy , OperationResultTransformer { private final AsyncFuture < ModelNode > futureResult ; private final OperationResultTransformer resultTransformer ; private final OperationRejectionPolicy rejectPolicy ; ExecutedHostRequest ( AsyncFuture < ModelNode > futureResult , OperationResultTransformer resultTransformer , OperationRejectionPolicy rejectPolicy ) { } ExecutedHostRequest ( AsyncFuture < ModelNode > futureResult , OperationTransformer . TransformedOperation transformedOperation ) { } public Future < ModelNode > getFinalResult ( ) { } @ Override public boolean rejectOperation ( ModelNode result ) { } @ Override public String getFailureDescription ( ) { } @ Override public ModelNode transformResult ( ModelNode result ) { } public void asyncCancel ( ) { <START_BUG> futureResult . asyncCancel ( false ) ; <END_BUG> } } static class ProxyOperationListener extends BlockingQueueOperationListener < HostControllerUpdateTask . ProxyOperation > { final boolean trace = HOST_CONTROLLER_LOGGER . isTraceEnabled ( ) ; @ Override public void operationPrepared ( final TransactionalProtocolClient . PreparedOperation < HostControllerUpdateTask . ProxyOperation > prepared ) { } @ Override public void operationComplete ( final HostControllerUpdateTask . ProxyOperation operation , final ModelNode result ) { } } private static class SubsystemInfoOperationListener implements TransactionalProtocolClient . TransactionalOperationListener < HostControllerUpdateTask . ProxyOperation > { private final HostControllerUpdateTask . ProxyOperationListener delegate ; private final Transformers transformers ; private SubsystemInfoOperationListener ( HostControllerUpdateTask . ProxyOperationListener delegate , Transformers transformers ) { } @ Override public void operationPrepared ( TransactionalProtocolClient . PreparedOperation < HostControllerUpdateTask . ProxyOperation > prepared ) { } @ Override public void operationFailed ( HostControllerUpdateTask . ProxyOperation operation , ModelNode result ) { } @ Override public void operationComplete ( HostControllerUpdateTask . ProxyOperation operation , ModelNode result ) { } private void storeSubsystemVersions ( ModelNode operation , ModelNode response ) { } } private static class DelegatingMessageHandler implements OperationMessageHandler { private final OperationContext context ; DelegatingMessageHandler ( final OperationContext context ) { } @ Override public void handleReport ( MessageSeverity severity , String message ) { } } private static class DelegatingOperationAttachments implements OperationAttachments { private final OperationContext context ; private DelegatingOperationAttachments ( final OperationContext context ) { } @ Override public boolean isAutoCloseStreams ( ) { } @ Override public List < InputStream > getInputStreams ( ) { } @ Override public void close ( ) throws IOException { } } }

Fix:
futureResult . asyncCancel ( true ) ;