/** * This will test the row count with startrow > endrow. The result should be * -1. * @throws Throwable */ @Test (timeout=300000) public void testRowCountWithInvalidRange1() { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); scan.setStartRow(ROWS[5]); scan.setStopRow(ROWS[2]); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); long rowCount = -1; try { rowCount = aClient.rowCount(TEST_TABLE, ci, scan); } catch (Throwable e) { myLog.error("Exception thrown in the invalidRange method" + e.getStackTrace()); } assertEquals(-1, rowCount); }
/** * This will test the row count with startrow = endrow and they will be * non-null. The result should be 0, as it assumes a non-get query. * @throws Throwable */ @Test (timeout=300000) public void testRowCountWithInvalidRange2() { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); scan.setStartRow(ROWS[5]); scan.setStopRow(ROWS[5]); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); long rowCount = -1; try { rowCount = aClient.rowCount(TEST_TABLE, ci, scan); } catch (Throwable e) { rowCount = 0; } assertEquals(0, rowCount); }
@Test (timeout=300000) public void testMaxWithInvalidRange() { AggregationClient aClient = new AggregationClient(conf); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); Scan scan = new Scan(); scan.setStartRow(ROWS[4]); scan.setStopRow(ROWS[2]); scan.addColumn(TEST_FAMILY, TEST_QUALIFIER); long max = Long.MIN_VALUE; try { max = aClient.max(TEST_TABLE, ci, scan); } catch (Throwable e) { max = 0; } assertEquals(0, max);// control should go to the catch block }
@Test (timeout=300000) public void testMaxWithInvalidRange2() throws Throwable { long max = Long.MIN_VALUE; Scan scan = new Scan(); scan.addColumn(TEST_FAMILY, TEST_QUALIFIER); scan.setStartRow(ROWS[4]); scan.setStopRow(ROWS[4]); try { AggregationClient aClient = new AggregationClient(conf); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); max = aClient.max(TEST_TABLE, ci, scan); } catch (Exception e) { max = 0; } assertEquals(0, max);// control should go to the catch block }
@Test (timeout=300000) public void testMinWithValidRangeWithNullCF() { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); scan.setStartRow(ROWS[5]); scan.setStopRow(ROWS[15]); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); Long min = null; try { min = aClient.min(TEST_TABLE, ci, scan); } catch (Throwable e) { } assertEquals(null, min);// CP will throw an IOException about the // null column family, and max will be set to 0 }
@Test (timeout=300000) public void testMinWithInvalidRange() { AggregationClient aClient = new AggregationClient(conf); Long min = null; Scan scan = new Scan(); scan.addFamily(TEST_FAMILY); scan.setStartRow(ROWS[4]); scan.setStopRow(ROWS[2]); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); try { min = aClient.min(TEST_TABLE, ci, scan); } catch (Throwable e) { } assertEquals(null, min);// control should go to the catch block }
@Test (timeout=300000) public void testMinWithInvalidRange2() { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); scan.addFamily(TEST_FAMILY); scan.setStartRow(ROWS[6]); scan.setStopRow(ROWS[6]); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); Long min = null; try { min = aClient.min(TEST_TABLE, ci, scan); } catch (Throwable e) { } assertEquals(null, min);// control should go to the catch block }
@Test (timeout=300000) public void testSumWithValidRangeWithNullCF() { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); scan.setStartRow(ROWS[6]); scan.setStopRow(ROWS[7]); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); Long sum = null; try { sum = aClient.sum(TEST_TABLE, ci, scan); } catch (Throwable e) { } assertEquals(null, sum);// CP will throw an IOException about the // null column family, and max will be set to 0 }
@Test (timeout=300000) public void testSumWithInvalidRange() { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); scan.addFamily(TEST_FAMILY); scan.setStartRow(ROWS[6]); scan.setStopRow(ROWS[2]); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); Long sum = null; try { sum = aClient.sum(TEST_TABLE, ci, scan); } catch (Throwable e) { } assertEquals(null, sum);// control should go to the catch block }
@Test (timeout=300000) public void testAvgWithInvalidRange() { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); scan.addColumn(TEST_FAMILY,TEST_QUALIFIER); scan.setStartRow(ROWS[5]); scan.setStopRow(ROWS[1]); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); Double avg = null; try { avg = aClient.avg(TEST_TABLE, ci, scan); } catch (Throwable e) { } assertEquals(null, avg);// control should go to the catch block }
@Test (timeout=300000) public void testStdWithValidRangeWithNullCF() { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); scan.setStartRow(ROWS[6]); scan.setStopRow(ROWS[17]); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); Double std = null; try { std = aClient.std(TEST_TABLE, ci, scan); } catch (Throwable e) { } assertEquals(null, std);// CP will throw an IOException about the // null column family, and max will be set to 0 }
@Test (timeout=300000) public void testStdWithInvalidRange() { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); scan.addFamily(TEST_FAMILY); scan.setStartRow(ROWS[6]); scan.setStopRow(ROWS[1]); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); Double std = null; try { std = aClient.std(TEST_TABLE, ci, scan); } catch (Throwable e) { } assertEquals(null, std);// control should go to the catch block }
/** * This will test the row count with startrow > endrow. The result should be * -1. * @throws Throwable */ @Test public void testRowCountWithInvalidRange1() { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); scan.addColumn(TEST_FAMILY, TEST_QUALIFIER); scan.setStartRow(ROWS[5]); scan.setStopRow(ROWS[2]); final ColumnInterpreter<Long, Long> ci = new LongColumnInterpreter(); long rowCount = -1; try { rowCount = aClient.rowCount(TEST_TABLE, ci, scan); } catch (Throwable e) { myLog.error("Exception thrown in the invalidRange method" + e.getStackTrace()); } assertEquals(-1, rowCount); }
/** * This will test the row count with startrow = endrow and they will be * non-null. The result should be 0, as it assumes a non-get query. * @throws Throwable */ @Test public void testRowCountWithInvalidRange2() { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); scan.addColumn(TEST_FAMILY, TEST_QUALIFIER); scan.setStartRow(ROWS[5]); scan.setStopRow(ROWS[5]); final ColumnInterpreter<Long, Long> ci = new LongColumnInterpreter(); long rowCount = -1; try { rowCount = aClient.rowCount(TEST_TABLE, ci, scan); } catch (Throwable e) { rowCount = 0; } assertEquals(0, rowCount); }
/** * This should return a 0 */ @Test public void testRowCountWithNullCF() { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); scan.setStartRow(ROWS[5]); scan.setStopRow(ROWS[15]); final ColumnInterpreter<Long, Long> ci = new LongColumnInterpreter(); long rowCount = -1; try { rowCount = aClient.rowCount(TEST_TABLE, ci, scan); } catch (Throwable e) { rowCount = 0; } assertEquals(0, rowCount); }
@Test public void testMaxWithInvalidRange2() throws Throwable { long max = Long.MIN_VALUE; Scan scan = new Scan(); scan.addColumn(TEST_FAMILY, TEST_QUALIFIER); scan.setStartRow(ROWS[4]); scan.setStopRow(ROWS[4]); try { AggregationClient aClient = new AggregationClient(conf); final ColumnInterpreter<Long, Long> ci = new LongColumnInterpreter(); max = aClient.max(TEST_TABLE, ci, scan); } catch (Exception e) { max = 0; } assertEquals(0, max);// control should go to the catch block }
/** * @throws Throwable */ @Test (timeout=300000) public void testMedianWithValidRange() throws Throwable { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); scan.addColumn(TEST_FAMILY,TEST_QUALIFIER); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); long median = aClient.median(TEST_TABLE, ci, scan); assertEquals(8L, median); }
/** * This will test rowcount with a valid range, i.e., a subset of rows. It will * be the most common use case. * @throws Throwable */ @Test (timeout=300000) public void testRowCountWithValidRange() throws Throwable { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); scan.addColumn(TEST_FAMILY, TEST_QUALIFIER); scan.setStartRow(ROWS[2]); scan.setStopRow(ROWS[14]); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); long rowCount = aClient.rowCount(TEST_TABLE, ci, scan); assertEquals(12, rowCount); }
/** * This will test the row count on the entire table. Startrow and endrow will * be null. * @throws Throwable */ @Test (timeout=300000) public void testRowCountAllTable() throws Throwable { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); long rowCount = aClient.rowCount(TEST_TABLE, ci, scan); assertEquals(ROWSIZE, rowCount); }
@Test (timeout=300000) public void testRowCountWithNullCQ() throws Throwable { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); scan.addFamily(TEST_FAMILY); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); long rowCount = aClient.rowCount(TEST_TABLE, ci, scan); assertEquals(20, rowCount); }
@Test (timeout=300000) public void testRowCountWithPrefixFilter() throws Throwable { AggregationClient aClient = new AggregationClient(conf); Scan scan = new Scan(); scan.addColumn(TEST_FAMILY, TEST_QUALIFIER); final ColumnInterpreter<Long, Long, EmptyMsg, LongMsg, LongMsg> ci = new LongColumnInterpreter(); Filter f = new PrefixFilter(Bytes.toBytes("foo:bar")); scan.setFilter(f); long rowCount = aClient.rowCount(TEST_TABLE, ci, scan); assertEquals(0, rowCount); }