public boolean containsRow(long row) { return rowOffset <= row && getEndRow() >= row; }
public boolean containsRow(long row) { return rowOffset <= row && getEndRow() >= row; }
public boolean containsRow(long row) { return rowOffset <= row && getEndRow() >= row; }
public void disableSave() { if (buffer != null) { this.saveOnMark = true; this.mark = false; if (batch != null && batch.getEndRow() <= this.buffer.getRowCount()) { this.batch = null; } } }
public void disableSave() { if (buffer != null) { this.saveOnMark = true; this.mark = false; if (batch != null && batch.getEndRow() <= this.buffer.getRowCount()) { this.batch = null; } } }
public void disableSave() { if (buffer != null) { this.saveOnMark = true; this.mark = false; if (batch != null && batch.getEndRow() <= this.buffer.getRowCount()) { this.batch = null; } } }
@Override protected boolean hasNextCommand() { return !this.currentBatch.getTerminationFlag() || batchRow <= this.currentBatch.getEndRow(); }
@Override protected boolean hasNextCommand() { return !this.currentBatch.getTerminationFlag() || batchRow <= this.currentBatch.getEndRow(); }
@Override protected boolean hasNextCommand() { return !this.currentBatch.getTerminationFlag() || batchRow <= this.currentBatch.getEndRow(); }
public long available() { if (batch != null && batch.containsRow(getCurrentIndex())) { return batch.getEndRow() - getCurrentIndex() + 1; } return 0; }
public long available() { if (batch != null && batch.containsRow(getCurrentIndex())) { return batch.getEndRow() - getCurrentIndex() + 1; } return 0; }
public long available() { if (batch != null && batch.containsRow(getCurrentIndex())) { return batch.getEndRow() - getCurrentIndex() + 1; } return 0; }
@Test public void testOffsetMultipleOfBatchSize() throws Exception { LimitNode node = getOffsetNode(100, new FakeRelationalNode(2, getRows(300), 50)); TupleBatch batch = node.nextBatch(); assertNotNull(batch); assertEquals(50, batch.getRowCount()); assertEquals(1, batch.getBeginRow()); assertEquals(50, batch.getEndRow()); assertEquals(Arrays.asList(new Object[] {new Integer(101)}), batch.getTuple(1)); assertFalse(batch.getTerminationFlag()); }
@Test public void testOffsetInSecondBatch() throws Exception { LimitNode node = getOffsetNode(55, new FakeRelationalNode(2, getRows(100), 50)); // batch 1 TupleBatch batch = node.nextBatch(); assertNotNull(batch); assertEquals(45, batch.getRowCount()); assertEquals(1, batch.getBeginRow()); assertEquals(45, batch.getEndRow()); assertEquals(Arrays.asList(new Object[] {new Integer(56)}), batch.getTuple(1)); assertTrue(batch.getTerminationFlag()); }
@Test public void testOffsetAtBatchSize() throws Exception { LimitNode node = getOffsetNode(50, new FakeRelationalNode(2, getRows(100), 50)); TupleBatch batch = node.nextBatch(); assertNotNull(batch); assertEquals(50, batch.getRowCount()); assertEquals(1, batch.getBeginRow()); assertEquals(50, batch.getEndRow()); assertEquals(Arrays.asList(new Object[] {new Integer(51)}), batch.getTuple(1)); assertTrue(batch.getTerminationFlag()); }
@Test public void testLimitInSecondBatch() throws Exception { LimitNode node = getLimitNode(55, new FakeRelationalNode(2, getRows(100), 50)); TupleBatch batch = node.nextBatch(); assertNotNull(batch); assertEquals(50, batch.getRowCount()); assertEquals(1, batch.getBeginRow()); assertEquals(50, batch.getEndRow()); assertFalse(batch.getTerminationFlag()); batch = node.nextBatch(); assertEquals(5, batch.getRowCount()); assertEquals(51, batch.getBeginRow()); assertEquals(55, batch.getEndRow()); assertTrue(batch.getTerminationFlag()); }
@Test public void testLimitMultipleOfBatchSize() throws Exception { LimitNode node = getLimitNode(100, new FakeRelationalNode(2, getRows(150), 50)); TupleBatch batch = node.nextBatch(); assertNotNull(batch); assertEquals(50, batch.getRowCount()); assertEquals(1, batch.getBeginRow()); assertEquals(50, batch.getEndRow()); assertFalse(batch.getTerminationFlag()); batch = node.nextBatch(); assertEquals(50, batch.getRowCount()); assertEquals(51, batch.getBeginRow()); assertEquals(100, batch.getEndRow()); assertTrue(batch.getTerminationFlag()); }
@Test public void testLimitInFirstBatch() throws Exception { LimitNode node = getLimitNode(40, new FakeRelationalNode(2, getRows(100), 50)); TupleBatch batch = node.nextBatch(); assertNotNull(batch); assertEquals(40, batch.getRowCount()); assertEquals(1, batch.getBeginRow()); assertEquals(40, batch.getEndRow()); assertTrue(batch.getTerminationFlag()); }
@Test public void testLimitAtBatchSize() throws Exception { LimitNode node = getLimitNode(50, new FakeRelationalNode(2, getRows(100), 50)); TupleBatch batch = node.nextBatch(); assertNotNull(batch); assertEquals(50, batch.getRowCount()); assertEquals(1, batch.getBeginRow()); assertEquals(50, batch.getEndRow()); assertTrue(batch.getTerminationFlag()); }
@Test public void testZeroLimit() throws Exception { LimitNode node = getLimitNode(0, new FakeRelationalNode(2, getRows(100), 50)); TupleBatch batch = node.nextBatch(); batch = node.nextBatch(); assertNotNull(batch); assertEquals(0, batch.getRowCount()); assertEquals(1, batch.getBeginRow()); assertEquals(0, batch.getEndRow()); assertTrue(batch.getTerminationFlag()); }