/** {@inheritDoc} */ @Override public Serializable reduce(List<GridComputeJobResult> results) throws GridException { if (log.isInfoEnabled()) log.info("Reducing job [job=" + this + ", results=" + results + ']'); if (results.size() > 1) fail(); return results.get(0).getData(); }
/** @return Marshallers. */ protected List<GridMarshaller> getMarshallers() { List<GridMarshaller> marshallers = new ArrayList<>(); marshallers.add(new GridJdkMarshaller()); marshallers.add(new GridOptimizedMarshaller()); return marshallers; }
/** {@inheritDoc} */ @Override public String reduce(List<GridComputeJobResult> results) throws GridException { assert results.size() == 1; return results.get(0).getData(); }
/** * @param seq Start/stop sequence. * @throws Exception If failed. */ private void checkSequence0(boolean[] seq) throws Exception { try { startGrid(0); TreeSet<Integer> started = new TreeSet<>(); started.add(0); int topVer = 1; for (boolean start : seq) { if (start) { int nextIdx = nextIndex(started); startGrid(nextIdx); started.add(nextIdx); } else { int idx = started.last(); stopGrid(idx); started.remove(idx); } topVer++; info("Grid 0: " + grid(0).localNode().id()); ((GridKernal) grid(0)) .internalCache() .context() .affinity() .affinityReadyFuture(topVer) .get(); for (int i : started) { if (i != 0) { GridEx grid = grid(i); ((GridKernal) grid) .internalCache() .context() .affinity() .affinityReadyFuture(topVer) .get(); info("Grid " + i + ": " + grid.localNode().id()); for (int part = 0; part < parts; part++) { List<GridNode> firstNodes = (List<GridNode>) grid(0).cache(null).affinity().mapPartitionToPrimaryAndBackups(part); List<GridNode> secondNodes = (List<GridNode>) grid.cache(null).affinity().mapPartitionToPrimaryAndBackups(part); assertEquals(firstNodes.size(), secondNodes.size()); for (int n = 0; n < firstNodes.size(); n++) assertEquals(firstNodes.get(n), secondNodes.get(n)); } } } } } finally { stopAllGrids(); } }