Search in sources :

Example 91 with GridFutureAdapter

use of org.apache.ignite.internal.util.future.GridFutureAdapter in project ignite by apache.

the class IgniteSemaphoreAbstractSelfTest method testAcquireAndExecuteIfFailure.

/**
 * Test to verify the {@link IgniteSemaphore#acquireAndExecute(IgniteCallable, int)}'s behaviour in case of a failure.
 *
 * @throws Exception If failed.
 */
@Test
public void testAcquireAndExecuteIfFailure() {
    IgniteSemaphore semaphore = ignite(0).semaphore("testAcquireAndExecuteIfFailure", 1, true, true);
    ExecutorService executorService = Executors.newSingleThreadExecutor();
    IgniteCallable<Integer> callable = new IgniteCallable<Integer>() {

        @Override
        public Integer call() {
            throw new RuntimeException("Foobar");
        }
    };
    GridTestUtils.assertThrows(log, new Callable<Object>() {

        @Override
        public Object call() throws Exception {
            IgniteFuture igniteFuture = semaphore.acquireAndExecute(callable, 1);
            Runnable runnable = new Runnable() {

                /**
                 * {@inheritDoc}
                 */
                @Override
                public void run() {
                    try {
                        Thread.sleep(1000);
                        IgniteFutureImpl impl = (IgniteFutureImpl<Integer>) igniteFuture;
                        GridFutureAdapter fut = (GridFutureAdapter) (impl.internalFuture());
                        fut.onDone(true);
                    } catch (InterruptedException e) {
                        throw new RuntimeException(e.getMessage());
                    }
                }
            };
            executorService.submit(runnable);
            ((IgniteFutureImpl) igniteFuture).internalFuture().get();
            assertTrue(igniteFuture.isDone());
            return null;
        }
    }, RuntimeException.class, "Foobar");
    executorService.shutdown();
}
Also used : IgniteFuture(org.apache.ignite.lang.IgniteFuture) ExpectedException(org.junit.rules.ExpectedException) IgniteCheckedException(org.apache.ignite.IgniteCheckedException) IOException(java.io.IOException) IgniteFutureImpl(org.apache.ignite.internal.util.future.IgniteFutureImpl) IgniteCallable(org.apache.ignite.lang.IgniteCallable) ExecutorService(java.util.concurrent.ExecutorService) GridFutureAdapter(org.apache.ignite.internal.util.future.GridFutureAdapter) IgniteSemaphore(org.apache.ignite.IgniteSemaphore) Test(org.junit.Test)

Example 92 with GridFutureAdapter

use of org.apache.ignite.internal.util.future.GridFutureAdapter in project ignite by apache.

the class GridCacheOrderedPreloadingSelfTest method checkPreloadOrder.

/**
 * @param first First cache mode.
 * @param second Second cache mode.
 * @throws Exception If failed.
 */
private void checkPreloadOrder(CacheMode first, CacheMode second) throws Exception {
    firstCacheMode = first;
    secondCacheMode = second;
    Ignite g = startGrid(0);
    try {
        IgniteCache<Object, Object> cache = g.cache("first");
        // Put some data into cache.
        for (int i = 0; i < 1000; i++) cache.put(i, i);
        for (int i = 1; i < GRID_CNT; i++) startGrid(i);
        // For first node in topology replicated preloader gets completed right away.
        for (int i = 1; i < GRID_CNT; i++) {
            IgniteKernal kernal = (IgniteKernal) grid(i);
            GridFutureAdapter<?> fut1 = (GridFutureAdapter<?>) kernal.internalCache(FIRST_CACHE_NAME).preloader().syncFuture();
            GridFutureAdapter<?> fut2 = (GridFutureAdapter<?>) kernal.internalCache(SECOND_CACHE_NAME).preloader().syncFuture();
            fut1.get();
            fut2.get();
            long firstSyncTime = times.get(i).get(FIRST_CACHE_NAME);
            long secondSyncTime = times.get(i).get(SECOND_CACHE_NAME);
            assertTrue(FIRST_CACHE_NAME + " [syncTime=" + firstSyncTime + "], " + SECOND_CACHE_NAME + " [syncTime=" + secondSyncTime + "]", firstSyncTime <= secondSyncTime);
        }
    } finally {
        stopAllGrids();
    }
}
Also used : IgniteKernal(org.apache.ignite.internal.IgniteKernal) GridFutureAdapter(org.apache.ignite.internal.util.future.GridFutureAdapter) Ignite(org.apache.ignite.Ignite)

Example 93 with GridFutureAdapter

use of org.apache.ignite.internal.util.future.GridFutureAdapter in project ignite by apache.

the class GridCacheBinaryObjectMetadataExchangeMultinodeTest method testReadRequestBlockedOnUpdatingMetadata.

/**
 * Verifies that if thread tries to read metadata with ongoing update it gets blocked
 * until acknowledge message arrives.
 */
@Test
public void testReadRequestBlockedOnUpdatingMetadata() throws Exception {
    final CyclicBarrier barrier = new CyclicBarrier(2);
    applyDiscoveryHook = false;
    final Ignite ignite0 = startGrid(0);
    final Ignite ignite1 = startGrid(1);
    final GridFutureAdapter finishFut = new GridFutureAdapter();
    applyDiscoveryHook = true;
    discoveryHook = new DiscoveryHook() {

        private volatile IgniteEx ignite;

        @Override
        public void beforeDiscovery(DiscoveryCustomMessage customMsg) {
            if (finishFut.isDone())
                return;
            if (customMsg instanceof MetadataUpdateAcceptedMessage) {
                MetadataUpdateAcceptedMessage acceptedMsg = (MetadataUpdateAcceptedMessage) customMsg;
                if (acceptedMsg.typeId() == BINARY_TYPE_ID && acceptedMsg.acceptedVersion() == 2) {
                    Object binaryProc = U.field(ignite.context(), "cacheObjProc");
                    Object transport = U.field(binaryProc, "transport");
                    try {
                        barrier.await(MAX_AWAIT, TimeUnit.MILLISECONDS);
                        Map syncMap = U.field(transport, "syncMap");
                        GridTestUtils.waitForCondition(new PA() {

                            @Override
                            public boolean apply() {
                                return syncMap.size() == 1;
                            }
                        }, MAX_AWAIT);
                        assertEquals("unexpected size of syncMap: ", 1, syncMap.size());
                        Object syncKey = syncMap.keySet().iterator().next();
                        int typeId = U.field(syncKey, "typeId");
                        assertEquals("unexpected typeId: ", BINARY_TYPE_ID, typeId);
                        int ver = U.field(syncKey, "ver");
                        assertEquals("unexpected pendingVersion: ", 2, ver);
                        finishFut.onDone();
                    } catch (Throwable t) {
                        finishFut.onDone(t);
                    }
                }
            }
        }

        @Override
        public void ignite(IgniteEx ignite) {
            this.ignite = ignite;
        }
    };
    final IgniteEx ignite2 = startGrid(2);
    discoveryHook.ignite(ignite2);
    // Unfinished PME may affect max await timeout.
    awaitPartitionMapExchange();
    // Update metadata (version 1).
    ignite0.executorService(ignite0.cluster().forLocal()).submit(new Runnable() {

        @Override
        public void run() {
            addIntField(ignite0, "f1", 101, 1);
        }
    }).get();
    // Update metadata (version 2).
    ignite1.executorService(ignite1.cluster().forLocal()).submit(new Runnable() {

        @Override
        public void run() {
            addStringField(ignite1, "f2", "str", 2);
        }
    });
    // Read metadata.
    IgniteFuture readFut = ignite2.compute(ignite2.cluster().forLocal()).callAsync(new IgniteCallable<Object>() {

        @Override
        public Object call() throws Exception {
            barrier.await(MAX_AWAIT, TimeUnit.MILLISECONDS);
            return ((BinaryObject) ignite2.cache(DEFAULT_CACHE_NAME).withKeepBinary().get(1)).field("f1");
        }
    });
    finishFut.get(MAX_AWAIT);
    assertEquals(101, readFut.get(MAX_AWAIT));
}
Also used : IgniteFuture(org.apache.ignite.lang.IgniteFuture) DiscoveryCustomMessage(org.apache.ignite.internal.managers.discovery.DiscoveryCustomMessage) CyclicBarrier(java.util.concurrent.CyclicBarrier) PA(org.apache.ignite.internal.util.typedef.PA) IgniteEx(org.apache.ignite.internal.IgniteEx) GridFutureAdapter(org.apache.ignite.internal.util.future.GridFutureAdapter) Ignite(org.apache.ignite.Ignite) BinaryObject(org.apache.ignite.binary.BinaryObject) Map(java.util.Map) DiscoveryHook(org.apache.ignite.testframework.GridTestUtils.DiscoveryHook) GridCommonAbstractTest(org.apache.ignite.testframework.junits.common.GridCommonAbstractTest) Test(org.junit.Test)

Example 94 with GridFutureAdapter

use of org.apache.ignite.internal.util.future.GridFutureAdapter in project ignite by apache.

the class DurableBackgroundTasksProcessorSelfTest method testNotFailNodeWhenNodeStoppindAndDeleteTasks.

/**
 * Checks that stopping the node does not fail the node when deleting tasks.
 *
 * @throws Exception If failed.
 */
@Test
public void testNotFailNodeWhenNodeStoppindAndDeleteTasks() throws Exception {
    IgniteEx n = startGrid(0);
    ObservingCheckpointListener observingCpLsnr = new ObservingCheckpointListener();
    dbMgr(n).addCheckpointListener(observingCpLsnr);
    n.cluster().state(ACTIVE);
    CheckpointWorkflow cpWorkflow = checkpointWorkflow(n);
    List<CheckpointListener> cpLs = cpWorkflow.getRelevantCheckpointListeners(dbMgr(n).checkpointedDataRegions());
    assertTrue(cpLs.contains(observingCpLsnr));
    assertTrue(cpLs.contains(durableBackgroundTask(n)));
    assertTrue(cpLs.indexOf(observingCpLsnr) < cpLs.indexOf(durableBackgroundTask(n)));
    SimpleTask simpleTask = new SimpleTask("t");
    IgniteInternalFuture<Void> taskFut = durableBackgroundTask(n).executeAsync(simpleTask, true);
    simpleTask.onExecFut.get(getTestTimeout());
    GridFutureAdapter<Void> startStopFut = new GridFutureAdapter<>();
    GridFutureAdapter<Void> finishStopFut = new GridFutureAdapter<>();
    observingCpLsnr.repeatOnMarkCheckpointBeginConsumer = true;
    observingCpLsnr.onMarkCheckpointBeginConsumer = ctx -> {
        if (n.context().isStopping()) {
            startStopFut.onDone();
            finishStopFut.get(getTestTimeout());
            observingCpLsnr.repeatOnMarkCheckpointBeginConsumer = false;
        }
    };
    IgniteInternalFuture<Void> stopFut = runAsync(() -> stopAllGrids(false));
    startStopFut.get(getTestTimeout());
    simpleTask.taskFut.onDone(DurableBackgroundTaskResult.complete(null));
    taskFut.get(getTestTimeout());
    finishStopFut.onDone();
    stopFut.get(getTestTimeout());
    assertNull(n.context().failure().failureContext());
    assertThrows(log, () -> durableBackgroundTask(n).executeAsync(simpleTask, true), IgniteException.class, null);
}
Also used : CheckpointListener(org.apache.ignite.internal.processors.cache.persistence.checkpoint.CheckpointListener) IgniteEx(org.apache.ignite.internal.IgniteEx) GridFutureAdapter(org.apache.ignite.internal.util.future.GridFutureAdapter) CheckpointWorkflow(org.apache.ignite.internal.processors.cache.persistence.checkpoint.CheckpointWorkflow) GridCommonAbstractTest(org.apache.ignite.testframework.junits.common.GridCommonAbstractTest) Test(org.junit.Test)

Example 95 with GridFutureAdapter

use of org.apache.ignite.internal.util.future.GridFutureAdapter in project ignite by apache.

the class InboundConnectionHandler method onFirstMessage.

/**
 * @param ses Session.
 * @param msg Message.
 */
private void onFirstMessage(final GridNioSession ses, Message msg) {
    UUID sndId;
    ConnectionKey connKey;
    if (msg instanceof NodeIdMessage) {
        sndId = U.bytesToUuid(((NodeIdMessage) msg).nodeIdBytes(), 0);
        connKey = new ConnectionKey(sndId, 0, -1);
    } else {
        assert msg instanceof HandshakeMessage : msg;
        HandshakeMessage msg0 = (HandshakeMessage) msg;
        sndId = ((HandshakeMessage) msg).nodeId();
        connKey = new ConnectionKey(sndId, msg0.connectionIndex(), msg0.connectCount());
    }
    if (log.isDebugEnabled())
        log.debug("Remote node ID received: " + sndId);
    final ClusterNode rmtNode = nodeGetter.apply(sndId);
    if (rmtNode == null) {
        DiscoverySpi discoverySpi = igniteExSupplier.get().configuration().getDiscoverySpi();
        boolean unknownNode = true;
        if (discoverySpi instanceof TcpDiscoverySpi) {
            TcpDiscoverySpi tcpDiscoverySpi = (TcpDiscoverySpi) discoverySpi;
            ClusterNode node0 = tcpDiscoverySpi.getNode0(sndId);
            if (node0 != null) {
                assert node0.isClient() : node0;
                if (node0.version().compareTo(VERSION_SINCE_CLIENT_COULD_WAIT_TO_CONNECT) >= 0)
                    unknownNode = false;
            }
        } else if (discoverySpi instanceof IgniteDiscoverySpi)
            unknownNode = !((IgniteDiscoverySpi) discoverySpi).knownNode(sndId);
        if (unknownNode) {
            U.warn(log, "Close incoming connection, unknown node [nodeId=" + sndId + ", ses=" + ses + ']');
            ses.send(new RecoveryLastReceivedMessage(UNKNOWN_NODE)).listen(fut -> ses.close());
        } else
            ses.send(new RecoveryLastReceivedMessage(NEED_WAIT)).listen(fut -> ses.close());
        return;
    }
    ses.addMeta(CONSISTENT_ID_META, rmtNode.consistentId());
    final ConnectionKey old = ses.addMeta(CONN_IDX_META, connKey);
    assert old == null;
    ClusterNode locNode = locNodeSupplier.get();
    if (ses.remoteAddress() == null)
        return;
    assert msg instanceof HandshakeMessage : msg;
    HandshakeMessage msg0 = (HandshakeMessage) msg;
    if (log.isDebugEnabled()) {
        log.debug("Received handshake message [locNodeId=" + locNode.id() + ", rmtNodeId=" + sndId + ", msg=" + msg0 + ']');
    }
    if (isChannelConnIdx(msg0.connectionIndex()))
        ses.send(new RecoveryLastReceivedMessage(0));
    else if (cfg.usePairedConnections() && usePairedConnections(rmtNode, attributeNames.pairedConnection())) {
        final GridNioRecoveryDescriptor recoveryDesc = nioSrvWrapper.inRecoveryDescriptor(rmtNode, connKey);
        ConnectClosureNew c = new ConnectClosureNew(ses, recoveryDesc, rmtNode);
        boolean reserve = recoveryDesc.tryReserve(msg0.connectCount(), c);
        if (reserve)
            connectedNew(recoveryDesc, ses, true);
        else {
            if (c.failed) {
                ses.send(new RecoveryLastReceivedMessage(ALREADY_CONNECTED));
                closeStaleConnections(connKey);
            }
        }
    } else {
        assert connKey.connectionIndex() >= 0 : connKey;
        GridCommunicationClient[] curClients = clientPool.clientFor(sndId);
        GridCommunicationClient oldClient = curClients != null && connKey.connectionIndex() < curClients.length ? curClients[connKey.connectionIndex()] : null;
        if (oldClient instanceof GridTcpNioCommunicationClient) {
            if (log.isInfoEnabled())
                log.info("Received incoming connection when already connected " + "to this node, rejecting [locNode=" + locNode.id() + ", rmtNode=" + sndId + ']');
            ses.send(new RecoveryLastReceivedMessage(ALREADY_CONNECTED));
            closeStaleConnections(connKey);
            return;
        }
        GridFutureAdapter<GridCommunicationClient> fut = new GridFutureAdapter<>();
        GridFutureAdapter<GridCommunicationClient> oldFut = clientPool.putIfAbsentFut(connKey, fut);
        final GridNioRecoveryDescriptor recoveryDesc = nioSrvWrapper.inRecoveryDescriptor(rmtNode, connKey);
        if (oldFut == null) {
            curClients = clientPool.clientFor(sndId);
            oldClient = curClients != null && connKey.connectionIndex() < curClients.length ? curClients[connKey.connectionIndex()] : null;
            if (oldClient instanceof GridTcpNioCommunicationClient) {
                assert oldClient.connectionIndex() == connKey.connectionIndex() : oldClient;
                if (log.isInfoEnabled())
                    log.info("Received incoming connection when already connected " + "to this node, rejecting [locNode=" + locNode.id() + ", rmtNode=" + sndId + ']');
                ses.send(new RecoveryLastReceivedMessage(ALREADY_CONNECTED));
                closeStaleConnections(connKey);
                fut.onDone(oldClient);
                return;
            }
            boolean reserved = recoveryDesc.tryReserve(msg0.connectCount(), new ConnectClosure(ses, recoveryDesc, rmtNode, connKey, msg0, true, fut));
            if (log.isDebugEnabled()) {
                log.debug("Received incoming connection from remote node " + "[rmtNode=" + rmtNode.id() + ", reserved=" + reserved + ", recovery=" + recoveryDesc + ']');
            }
            if (reserved) {
                try {
                    GridTcpNioCommunicationClient client = connected(recoveryDesc, ses, rmtNode, msg0.received(), true, true);
                    fut.onDone(client);
                } finally {
                    clientPool.removeFut(connKey, fut);
                }
            }
        } else {
            if (oldFut instanceof ConnectFuture && locNode.order() < rmtNode.order()) {
                if (log.isInfoEnabled()) {
                    log.info("Received incoming connection from remote node while " + "connecting to this node, rejecting [locNode=" + locNode.id() + ", locNodeOrder=" + locNode.order() + ", rmtNode=" + rmtNode.id() + ", rmtNodeOrder=" + rmtNode.order() + ']');
                }
                ses.send(new RecoveryLastReceivedMessage(ALREADY_CONNECTED));
            } else {
                boolean reserved = recoveryDesc.tryReserve(msg0.connectCount(), new ConnectClosure(ses, recoveryDesc, rmtNode, connKey, msg0, true, fut));
                GridTcpNioCommunicationClient client = null;
                if (reserved)
                    client = connected(recoveryDesc, ses, rmtNode, msg0.received(), true, true);
                if (oldFut instanceof ConnectionRequestFuture && !oldFut.isDone())
                    oldFut.onDone(client);
            }
        }
    }
}
Also used : ClusterNode(org.apache.ignite.cluster.ClusterNode) IgniteInternalFuture(org.apache.ignite.internal.IgniteInternalFuture) CommunicationTcpUtils.usePairedConnections(org.apache.ignite.spi.communication.tcp.internal.CommunicationTcpUtils.usePairedConnections) GridNioSession(org.apache.ignite.internal.util.nio.GridNioSession) GridFutureAdapter(org.apache.ignite.internal.util.future.GridFutureAdapter) NEED_WAIT(org.apache.ignite.spi.communication.tcp.messages.RecoveryLastReceivedMessage.NEED_WAIT) GridNioSessionMetaKey(org.apache.ignite.internal.util.nio.GridNioSessionMetaKey) DiscoverySpi(org.apache.ignite.spi.discovery.DiscoverySpi) CONSISTENT_ID_META(org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.CONSISTENT_ID_META) FailureProcessor(org.apache.ignite.internal.processors.failure.FailureProcessor) GridTcpNioCommunicationClient(org.apache.ignite.internal.util.nio.GridTcpNioCommunicationClient) Channel(java.nio.channels.Channel) GridNioMessageTracker(org.apache.ignite.internal.util.nio.GridNioMessageTracker) NOOP(org.apache.ignite.spi.communication.tcp.internal.CommunicationTcpUtils.NOOP) FailureType(org.apache.ignite.failure.FailureType) IgniteInClosure(org.apache.ignite.lang.IgniteInClosure) NodeIdMessage(org.apache.ignite.spi.communication.tcp.messages.NodeIdMessage) IgniteCheckedException(org.apache.ignite.IgniteCheckedException) SpanTags(org.apache.ignite.internal.processors.tracing.SpanTags) IgniteRunnable(org.apache.ignite.lang.IgniteRunnable) UUID(java.util.UUID) RecoveryLastReceivedMessage(org.apache.ignite.spi.communication.tcp.messages.RecoveryLastReceivedMessage) AttributeNames(org.apache.ignite.spi.communication.tcp.AttributeNames) CountDownLatch(java.util.concurrent.CountDownLatch) Nullable(org.jetbrains.annotations.Nullable) MTC(org.apache.ignite.internal.processors.tracing.MTC) TraceableMessagesTable.traceName(org.apache.ignite.internal.processors.tracing.messages.TraceableMessagesTable.traceName) CHANNEL_FUT_META(org.apache.ignite.spi.communication.tcp.internal.GridNioServerWrapper.CHANNEL_FUT_META) Message(org.apache.ignite.plugin.extensions.communication.Message) GridCommunicationClient(org.apache.ignite.internal.util.nio.GridCommunicationClient) IgniteProductVersion(org.apache.ignite.lang.IgniteProductVersion) NODE_STOPPING(org.apache.ignite.spi.communication.tcp.messages.RecoveryLastReceivedMessage.NODE_STOPPING) ALREADY_CONNECTED(org.apache.ignite.spi.communication.tcp.messages.RecoveryLastReceivedMessage.ALREADY_CONNECTED) CommunicationListener(org.apache.ignite.spi.communication.CommunicationListener) TcpCommunicationMetricsListener(org.apache.ignite.spi.communication.tcp.TcpCommunicationMetricsListener) Span(org.apache.ignite.internal.processors.tracing.Span) GridSelectorNioSessionImpl(org.apache.ignite.internal.util.nio.GridSelectorNioSessionImpl) U(org.apache.ignite.internal.util.typedef.internal.U) IgniteLogger(org.apache.ignite.IgniteLogger) Function(java.util.function.Function) Supplier(java.util.function.Supplier) IgniteDiscoverySpi(org.apache.ignite.internal.managers.discovery.IgniteDiscoverySpi) LT(org.apache.ignite.internal.util.typedef.internal.LT) ClusterNode(org.apache.ignite.cluster.ClusterNode) FailureContext(org.apache.ignite.failure.FailureContext) CONN_IDX_META(org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.CONN_IDX_META) Ignite(org.apache.ignite.Ignite) MAX_CONN_PER_NODE(org.apache.ignite.spi.communication.tcp.internal.GridNioServerWrapper.MAX_CONN_PER_NODE) SES_FUT_META(org.apache.ignite.spi.communication.tcp.internal.TcpCommunicationConnectionCheckFuture.SES_FUT_META) HandshakeMessage(org.apache.ignite.spi.communication.tcp.messages.HandshakeMessage) GridNioServerListenerAdapter(org.apache.ignite.internal.util.nio.GridNioServerListenerAdapter) TcpDiscoverySpi(org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi) UNKNOWN_NODE(org.apache.ignite.spi.communication.tcp.messages.RecoveryLastReceivedMessage.UNKNOWN_NODE) GridNioRecoveryDescriptor(org.apache.ignite.internal.util.nio.GridNioRecoveryDescriptor) HandshakeWaitMessage(org.apache.ignite.spi.communication.tcp.messages.HandshakeWaitMessage) RecoveryLastReceivedMessage(org.apache.ignite.spi.communication.tcp.messages.RecoveryLastReceivedMessage) GridCommunicationClient(org.apache.ignite.internal.util.nio.GridCommunicationClient) GridTcpNioCommunicationClient(org.apache.ignite.internal.util.nio.GridTcpNioCommunicationClient) HandshakeMessage(org.apache.ignite.spi.communication.tcp.messages.HandshakeMessage) NodeIdMessage(org.apache.ignite.spi.communication.tcp.messages.NodeIdMessage) DiscoverySpi(org.apache.ignite.spi.discovery.DiscoverySpi) IgniteDiscoverySpi(org.apache.ignite.internal.managers.discovery.IgniteDiscoverySpi) TcpDiscoverySpi(org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi) GridNioRecoveryDescriptor(org.apache.ignite.internal.util.nio.GridNioRecoveryDescriptor) GridFutureAdapter(org.apache.ignite.internal.util.future.GridFutureAdapter) UUID(java.util.UUID) IgniteDiscoverySpi(org.apache.ignite.internal.managers.discovery.IgniteDiscoverySpi) TcpDiscoverySpi(org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi)

Aggregations

GridFutureAdapter (org.apache.ignite.internal.util.future.GridFutureAdapter)110 IgniteCheckedException (org.apache.ignite.IgniteCheckedException)59 IgniteInternalFuture (org.apache.ignite.internal.IgniteInternalFuture)34 IgniteException (org.apache.ignite.IgniteException)23 ArrayList (java.util.ArrayList)21 AffinityTopologyVersion (org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion)21 List (java.util.List)20 UUID (java.util.UUID)20 ClusterNode (org.apache.ignite.cluster.ClusterNode)20 IgniteEx (org.apache.ignite.internal.IgniteEx)20 HashMap (java.util.HashMap)19 Map (java.util.Map)19 IgniteInterruptedCheckedException (org.apache.ignite.internal.IgniteInterruptedCheckedException)18 Test (org.junit.Test)18 Nullable (org.jetbrains.annotations.Nullable)17 Ignite (org.apache.ignite.Ignite)15 ClusterTopologyCheckedException (org.apache.ignite.internal.cluster.ClusterTopologyCheckedException)15 HashSet (java.util.HashSet)14 AtomicInteger (java.util.concurrent.atomic.AtomicInteger)14 T2 (org.apache.ignite.internal.util.typedef.T2)13