@Override public synchronized void nextFrame(ByteBuffer buffer) throws HyracksDataException { super.nextFrame(buffer); currentMultiplier = buffer.capacity() / initialFrameSize; if (frozen) { try { if (timed) { wait(duration); } else { while (frozen && kicks == 0) { wait(); } kicks--; } } catch (InterruptedException e) { throw HyracksDataException.create(e); } } currentMultiplier = 0; } }
@Override public void fail() throws HyracksDataException { delay(failDuration); failAnswer.call(); }
Assert.assertEquals(writer.nextFrameCount(), 1); fta.reset(writer.getLastFrame()); Assert.assertEquals(fta.getTupleCount(), 1); FeedUtils.processFeedMessage(writer.getLastFrame(), tempBuffer, fta); Assert.assertEquals(MessagingFrameTupleAppender.MARKER_MESSAGE, MessagingFrameTupleAppender.getMessageType(tempBuffer)); partitioner.flush(ITracer.NONE, null, ITraceCategoryRegistry.CATEGORIES_NONE, null); for (TestFrameWriter writer : recipients) { Assert.assertEquals(writer.nextFrameCount(), 2); fta.reset(writer.getLastFrame()); Assert.assertEquals(fta.getTupleCount(), 1); FeedUtils.processFeedMessage(writer.getLastFrame(), tempBuffer, fta); Assert.assertEquals(MessagingFrameTupleAppender.ACK_REQ_FEED_MESSAGE, MessagingFrameTupleAppender.getMessageType(tempBuffer)); partitioner.flush(ITracer.NONE, null, ITraceCategoryRegistry.CATEGORIES_NONE, null); for (TestFrameWriter writer : recipients) { Assert.assertEquals(writer.nextFrameCount(), 3); fta.reset(writer.getLastFrame()); Assert.assertEquals(fta.getTupleCount(), 1); FeedUtils.processFeedMessage(writer.getLastFrame(), tempBuffer, fta); Assert.assertEquals(MessagingFrameTupleAppender.NULL_FEED_MESSAGE, MessagingFrameTupleAppender.getMessageType(tempBuffer)); Assert.assertEquals(writer.nextFrameCount(), 4); Assert.assertEquals(writer.closeCount(), 1);
handler.open(); VSizeFrame frame = new VSizeFrame(ctx); writer.setNextDuration(1); writer.validate(false); handler.close(); Assert.assertEquals(writer.nextFrameCount(), (NUM_FRAMES * numRounds)); writer.validate(true); } catch (Throwable th) { th.printStackTrace();
writer.validate(false); handler.close(); Assert.assertEquals(NUM_FRAMES * numRounds + 1, writer.nextFrameCount()); writer.validate(true); } catch (Throwable th) { th.printStackTrace();
Assert.assertEquals(partitionWriterFactory.getWriters().get(0).nextFrameCount(), 1); Assert.assertEquals(partitionWriterFactory.getWriters().get(1).nextFrameCount(), 1); Assert.assertEquals(partitionWriterFactory.getWriters().get(2).nextFrameCount(), 1); Assert.assertEquals(partitionWriterFactory.getWriters().get(3).nextFrameCount(), 1); Assert.assertEquals(partitionWriterFactory.getWriters().get(4).nextFrameCount(), 1); for (TestFrameWriter writer : recipients) { fta.reset(writer.getLastFrame()); Assert.assertEquals(fta.getTupleCount(), 2); FeedUtils.processFeedMessage(writer.getLastFrame(), tempBuffer, fta); Assert.assertEquals(MessagingFrameTupleAppender.ACK_REQ_FEED_MESSAGE, MessagingFrameTupleAppender.getMessageType(tempBuffer));
public static TestFrameWriter create(Collection<FrameWriterOperation> exceptionThrowingOperations, Collection<FrameWriterOperation> errorThrowingOperations, boolean deepCopyInputFrames) { CountAnswer openAnswer = createAnswer(FrameWriterOperation.Open, exceptionThrowingOperations, errorThrowingOperations); CountAnswer nextAnswer = createAnswer(FrameWriterOperation.NextFrame, exceptionThrowingOperations, errorThrowingOperations); CountAnswer flushAnswer = createAnswer(FrameWriterOperation.Flush, exceptionThrowingOperations, errorThrowingOperations); CountAnswer failAnswer = createAnswer(FrameWriterOperation.Fail, exceptionThrowingOperations, errorThrowingOperations); CountAnswer closeAnswer = createAnswer(FrameWriterOperation.Close, exceptionThrowingOperations, errorThrowingOperations); return new TestFrameWriter(openAnswer, nextAnswer, flushAnswer, failAnswer, closeAnswer, deepCopyInputFrames); }
Assert.assertEquals(writer.nextFrameCount(), 1); fta.reset(writer.getLastFrame()); Assert.assertEquals(fta.getTupleCount(), 1); FeedUtils.processFeedMessage(writer.getLastFrame(), tempBuffer, fta); Assert.assertEquals(MessagingFrameTupleAppender.NULL_FEED_MESSAGE, MessagingFrameTupleAppender.getMessageType(tempBuffer)); partitioner.flush(ITracer.NONE, null, ITraceCategoryRegistry.CATEGORIES_NONE, null); for (TestFrameWriter writer : recipients) { Assert.assertEquals(writer.nextFrameCount(), 2); fta.reset(writer.getLastFrame()); Assert.assertEquals(fta.getTupleCount(), 1); FeedUtils.processFeedMessage(writer.getLastFrame(), tempBuffer, fta); Assert.assertEquals(MessagingFrameTupleAppender.ACK_REQ_FEED_MESSAGE, MessagingFrameTupleAppender.getMessageType(tempBuffer)); partitioner.flush(ITracer.NONE, null, ITraceCategoryRegistry.CATEGORIES_NONE, null); for (TestFrameWriter writer : recipients) { Assert.assertEquals(writer.nextFrameCount(), 3); fta.reset(writer.getLastFrame()); Assert.assertEquals(fta.getTupleCount(), 1); FeedUtils.processFeedMessage(writer.getLastFrame(), tempBuffer, fta); Assert.assertEquals(MessagingFrameTupleAppender.NULL_FEED_MESSAGE, MessagingFrameTupleAppender.getMessageType(tempBuffer)); Assert.assertEquals(writer.nextFrameCount(), 4); Assert.assertEquals(writer.closeCount(), 1);
writer.validate(false); handler.close(); Assert.assertEquals(NUM_FRAMES * numRounds, writer.nextFrameCount()); writer.validate(true); } catch (Throwable th) { th.printStackTrace();
Assert.assertEquals(1, partitionWriterFactory.getWriters().get(0).nextFrameCount()); Assert.assertEquals(2, partitionWriterFactory.getWriters().get(1).nextFrameCount()); Assert.assertEquals(1, partitionWriterFactory.getWriters().get(2).nextFrameCount()); Assert.assertEquals(2, partitionWriterFactory.getWriters().get(3).nextFrameCount()); Assert.assertEquals(2, partitionWriterFactory.getWriters().get(4).nextFrameCount()); for (TestFrameWriter writer : recipients) { fta.reset(writer.getLastFrame()); Assert.assertEquals(fta.getTupleCount(), 1); FeedUtils.processFeedMessage(writer.getLastFrame(), tempBuffer, fta); Assert.assertEquals(MessagingFrameTupleAppender.MARKER_MESSAGE, MessagingFrameTupleAppender.getMessageType(tempBuffer));
writer.validate(false); handler.close(); Assert.assertEquals(NUM_FRAMES * numRounds + 1, writer.nextFrameCount()); writer.validate(true); } catch (Throwable th) { th.printStackTrace();
@Override public void nextFrame(ByteBuffer buffer) throws HyracksDataException { super.nextFrame(buffer); accessor.reset(buffer); count += accessor.getTupleCount(); }
@Override public void close() throws HyracksDataException { delay(closeDuration); closeAnswer.call(); }
@Override public void open() throws HyracksDataException { delay(openDuration); openAnswer.call(); }
@Override public void flush() throws HyracksDataException { delay(flushDuration); flushAnswer.call(); }
@Override public void nextFrame(ByteBuffer buffer) throws HyracksDataException { if (deepCopyFrames) { if (lastFrame.capacity() != buffer.capacity()) { lastFrame = ByteBuffer.allocate(buffer.capacity()); } lastFrame.clear(); lastFrame.put(buffer.array()); } else { lastFrame = buffer; } delay(nextDuration); nextAnswer.call(); }