@Override protected Result newResult(final int size, SplitValuePair<Split, Result>[] a) { long totalBucketSize = 0; int maxBucketSize = 0; final int[] counters = new int[size]; for (int i = 0; i < a.length; i++) { final Split split = a[i].key; final Result tmp = a[i].val; totalBucketSize += tmp.totalBucketSize; maxBucketSize = Math.max(maxBucketSize, tmp.maxBucketSize); System.arraycopy(tmp.counters/* src */, 0/* srcPos */, counters/* dest */, split.fromIndex/* destPos */, split.ntuples/* length */); } /* * Return the aggregated result. */ final Result r = new Result(totalBucketSize, maxBucketSize, counters); return r; }
return new Result(totalBucketSize, maxBucketSize, counters);
return new Result(totalBucketSize, maxBucketSize, counters);
/** * Unit test for {@link BlobsWriteProc.Result} serialization. */ public void test_blobsResultSerialization() { final long totalBucketSize = 7L; final int maxBucketSize = 3; final int[] counters = new int[] { 1, 0, 2, BlobsIndexHelper.NOT_FOUND, 3 }; final BlobsWriteProc.Result given = new BlobsWriteProc.Result( totalBucketSize, maxBucketSize, counters); assertEquals("totalBucketSize", totalBucketSize, given.totalBucketSize); assertEquals("maxBucketSize", maxBucketSize, given.maxBucketSize); assertTrue("counters[]", Arrays.equals(counters, given.counters)); final byte[] b = SerializerUtil.serialize(given); final BlobsWriteProc.Result actual = (BlobsWriteProc.Result) SerializerUtil .deserialize(b); assertEquals("totalBucketSize", totalBucketSize, actual.totalBucketSize); assertEquals("maxBucketSize", maxBucketSize, actual.maxBucketSize); assertTrue("counters[]", Arrays.equals(counters, actual.counters)); }
/** * Unit test for {@link BlobsWriteProc.Result} serialization. */ public void test_blobsResultSerialization() { final long totalBucketSize = 7L; final int maxBucketSize = 3; final int[] counters = new int[] { 1, 0, 2, BlobsIndexHelper.NOT_FOUND, 3 }; final BlobsWriteProc.Result given = new BlobsWriteProc.Result( totalBucketSize, maxBucketSize, counters); assertEquals("totalBucketSize", totalBucketSize, given.totalBucketSize); assertEquals("maxBucketSize", maxBucketSize, given.maxBucketSize); assertTrue("counters[]", Arrays.equals(counters, given.counters)); final byte[] b = SerializerUtil.serialize(given); final BlobsWriteProc.Result actual = (BlobsWriteProc.Result) SerializerUtil .deserialize(b); assertEquals("totalBucketSize", totalBucketSize, actual.totalBucketSize); assertEquals("maxBucketSize", maxBucketSize, actual.maxBucketSize); assertTrue("counters[]", Arrays.equals(counters, actual.counters)); }
/** * Unit test for {@link BlobsWriteProc.Result} serialization. */ public void test_blobsResultSerialization() { final long totalBucketSize = 7L; final int maxBucketSize = 3; final int[] counters = new int[] { 1, 0, 2, BlobsIndexHelper.NOT_FOUND, 3 }; final BlobsWriteProc.Result given = new BlobsWriteProc.Result( totalBucketSize, maxBucketSize, counters); assertEquals("totalBucketSize", totalBucketSize, given.totalBucketSize); assertEquals("maxBucketSize", maxBucketSize, given.maxBucketSize); assertTrue("counters[]", Arrays.equals(counters, given.counters)); final byte[] b = SerializerUtil.serialize(given); final BlobsWriteProc.Result actual = (BlobsWriteProc.Result) SerializerUtil .deserialize(b); assertEquals("totalBucketSize", totalBucketSize, actual.totalBucketSize); assertEquals("maxBucketSize", maxBucketSize, actual.maxBucketSize); assertTrue("counters[]", Arrays.equals(counters, actual.counters)); }
@Override protected Result newResult(final int size, SplitValuePair<Split, Result>[] a) { long totalBucketSize = 0; int maxBucketSize = 0; final int[] counters = new int[size]; for (int i = 0; i < a.length; i++) { final Split split = a[i].key; final Result tmp = a[i].val; totalBucketSize += tmp.totalBucketSize; maxBucketSize = Math.max(maxBucketSize, tmp.maxBucketSize); System.arraycopy(tmp.counters/* src */, 0/* srcPos */, counters/* dest */, split.fromIndex/* destPos */, split.ntuples/* length */); } /* * Return the aggregated result. */ final Result r = new Result(totalBucketSize, maxBucketSize, counters); return r; }