Search in sources :

Example 41 with SeekableView

use of net.opentsdb.core.SeekableView in project opentsdb by OpenTSDB.

the class TestSumSeries method sumOneSeriesEach.

@Test
public void sumOneSeriesEach() throws Exception {
    SeekableView view2 = SeekableViewsForTest.generator(START_TIME, INTERVAL, NUM_POINTS, true, 10, 1);
    DataPoints dps2 = PowerMockito.mock(DataPoints.class);
    when(dps2.iterator()).thenReturn(view2);
    when(dps2.metricName()).thenReturn("sys.mem");
    when(dps2.metricUID()).thenReturn(new byte[] { 0, 0, 2 });
    group_bys = new DataPoints[] { dps2 };
    query_results.add(group_bys);
    final DataPoints[] results = func.evaluate(data_query, query_results, params);
    assertEquals(1, results.length);
    assertEquals(METRIC_STRING, results[0].metricName());
    long ts = START_TIME;
    double v = 11;
    for (DataPoint dp : results[0]) {
        assertEquals(ts, dp.timestamp());
        assertEquals(v, dp.toDouble(), 0.001);
        v += 2;
        ts += INTERVAL;
    }
}
Also used : DataPoint(net.opentsdb.core.DataPoint) SeekableView(net.opentsdb.core.SeekableView) DataPoints(net.opentsdb.core.DataPoints) Test(org.junit.Test) SeekableViewsForTest(net.opentsdb.core.SeekableViewsForTest) PrepareForTest(org.powermock.core.classloader.annotations.PrepareForTest)

Example 42 with SeekableView

use of net.opentsdb.core.SeekableView in project opentsdb by OpenTSDB.

the class TestSumSeries method sumMultipleSeriesEach.

@Test
public void sumMultipleSeriesEach() throws Exception {
    oneExtraSameE();
    queryAB_Dstar();
    query_results.clear();
    query_results.add(results.get("1").getValue());
    query_results.add(results.get("0").getValue());
    final DataPoints[] results = func.evaluate(data_query, query_results, params);
    assertEquals(3, results.length);
    final int[] vals = new int[] { 12, 18, 17 };
    for (int i = 0; i < results.length; i++) {
        long ts = 1431561600000l;
        final SeekableView it = results[i].iterator();
        while (it.hasNext()) {
            final DataPoint dp = it.next();
            assertEquals(ts, dp.timestamp());
            assertEquals(vals[i], dp.toDouble(), 0.0001);
            if (i < 2) {
                vals[i] += 2;
            } else {
                vals[i]++;
            }
            ts += INTERVAL;
        }
    }
}
Also used : DataPoint(net.opentsdb.core.DataPoint) SeekableView(net.opentsdb.core.SeekableView) DataPoints(net.opentsdb.core.DataPoints) DataPoint(net.opentsdb.core.DataPoint) Test(org.junit.Test) SeekableViewsForTest(net.opentsdb.core.SeekableViewsForTest) PrepareForTest(org.powermock.core.classloader.annotations.PrepareForTest)

Example 43 with SeekableView

use of net.opentsdb.core.SeekableView in project opentsdb by OpenTSDB.

the class TestHighestCurrent method evaluateTopN2with2SeriesLong.

@Test
public void evaluateTopN2with2SeriesLong() throws Exception {
    params.add("2");
    SeekableView view2 = SeekableViewsForTest.generator(START_TIME, INTERVAL, NUM_POINTS, true, 10, 1);
    DataPoints dps2 = PowerMockito.mock(DataPoints.class);
    when(dps2.iterator()).thenReturn(view2);
    when(dps2.metricNameAsync()).thenReturn(Deferred.fromResult("sys.mem"));
    group_bys = new DataPoints[] { dps, dps2 };
    query_results.clear();
    query_results.add(group_bys);
    final DataPoints[] results = func.evaluate(data_query, query_results, params);
    assertEquals(2, results.length);
    assertEquals("sys.mem", results[0].metricName());
    assertEquals(METRIC, results[1].metricName());
    long ts = START_TIME;
    long v = 10;
    for (DataPoint dp : results[0]) {
        assertEquals(ts, dp.timestamp());
        assertTrue(dp.isInteger());
        assertEquals(v, dp.longValue());
        ts += INTERVAL;
        v += 1;
    }
    ts = START_TIME;
    v = 1;
    for (DataPoint dp : results[1]) {
        assertEquals(ts, dp.timestamp());
        assertTrue(dp.isInteger());
        assertEquals(v, dp.longValue());
        ts += INTERVAL;
        v += 1;
    }
}
Also used : DataPoint(net.opentsdb.core.DataPoint) SeekableView(net.opentsdb.core.SeekableView) DataPoints(net.opentsdb.core.DataPoints) Test(org.junit.Test) SeekableViewsForTest(net.opentsdb.core.SeekableViewsForTest) PrepareForTest(org.powermock.core.classloader.annotations.PrepareForTest)

Example 44 with SeekableView

use of net.opentsdb.core.SeekableView in project opentsdb by OpenTSDB.

the class TestHighestCurrent method evaluateTopN1with2SeriesLongDoubleMixed.

@Test
public void evaluateTopN1with2SeriesLongDoubleMixed() throws Exception {
    params.add("1");
    SeekableView view2 = SeekableViewsForTest.generator(START_TIME, INTERVAL, NUM_POINTS, false, 10, 1.5, true);
    DataPoints dps2 = PowerMockito.mock(DataPoints.class);
    when(dps2.iterator()).thenReturn(view2);
    when(dps2.metricNameAsync()).thenReturn(Deferred.fromResult("sys.mem"));
    group_bys = new DataPoints[] { dps, dps2 };
    query_results.clear();
    query_results.add(group_bys);
    final DataPoints[] results = func.evaluate(data_query, query_results, params);
    assertEquals(1, results.length);
    assertEquals("sys.mem", results[0].metricName());
    long ts = START_TIME;
    double v = 10;
    boolean toggle = true;
    for (DataPoint dp : results[0]) {
        assertEquals(ts, dp.timestamp());
        if (toggle) {
            assertTrue(dp.isInteger());
            assertEquals(v, dp.longValue(), 0.001);
        } else {
            assertFalse(dp.isInteger());
            assertEquals(v, dp.doubleValue(), 0.001);
        }
        toggle = !toggle;
        ts += INTERVAL;
        v += 1.5;
    }
}
Also used : DataPoint(net.opentsdb.core.DataPoint) SeekableView(net.opentsdb.core.SeekableView) DataPoints(net.opentsdb.core.DataPoints) Test(org.junit.Test) SeekableViewsForTest(net.opentsdb.core.SeekableViewsForTest) PrepareForTest(org.powermock.core.classloader.annotations.PrepareForTest)

Example 45 with SeekableView

use of net.opentsdb.core.SeekableView in project opentsdb by OpenTSDB.

the class TestHighestCurrent method evaluateTopN2with2SeriesDouble.

@Test
public void evaluateTopN2with2SeriesDouble() throws Exception {
    params.add("2");
    SeekableView view2 = SeekableViewsForTest.generator(START_TIME, INTERVAL, NUM_POINTS, false, 10, 1.5);
    DataPoints dps2 = PowerMockito.mock(DataPoints.class);
    when(dps2.iterator()).thenReturn(view2);
    when(dps2.metricNameAsync()).thenReturn(Deferred.fromResult("sys.mem"));
    group_bys = new DataPoints[] { dps, dps2 };
    query_results.clear();
    query_results.add(group_bys);
    final DataPoints[] results = func.evaluate(data_query, query_results, params);
    assertEquals(2, results.length);
    assertEquals("sys.mem", results[0].metricName());
    assertEquals(METRIC, results[1].metricName());
    long ts = START_TIME;
    double v = 10;
    for (DataPoint dp : results[0]) {
        assertEquals(ts, dp.timestamp());
        assertFalse(dp.isInteger());
        assertEquals(v, dp.doubleValue(), 0.001);
        ts += INTERVAL;
        v += 1.5;
    }
    ts = START_TIME;
    v = 1;
    for (DataPoint dp : results[1]) {
        assertEquals(ts, dp.timestamp());
        assertTrue(dp.isInteger());
        assertEquals(v, dp.toDouble(), 0.001);
        ts += INTERVAL;
        v += 1;
    }
}
Also used : DataPoint(net.opentsdb.core.DataPoint) SeekableView(net.opentsdb.core.SeekableView) DataPoints(net.opentsdb.core.DataPoints) Test(org.junit.Test) SeekableViewsForTest(net.opentsdb.core.SeekableViewsForTest) PrepareForTest(org.powermock.core.classloader.annotations.PrepareForTest)

Aggregations

SeekableView (net.opentsdb.core.SeekableView)54 DataPoint (net.opentsdb.core.DataPoint)50 DataPoints (net.opentsdb.core.DataPoints)50 Test (org.junit.Test)47 PrepareForTest (org.powermock.core.classloader.annotations.PrepareForTest)47 SeekableViewsForTest (net.opentsdb.core.SeekableViewsForTest)45 ArrayList (java.util.ArrayList)7 MutableDataPoint (net.opentsdb.core.MutableDataPoint)7 AggregationIterator (net.opentsdb.core.AggregationIterator)3 NoSuchElementException (java.util.NoSuchElementException)2 Callback (com.stumbleupon.async.Callback)1 Deferred (com.stumbleupon.async.Deferred)1 IOException (java.io.IOException)1 Map (java.util.Map)1 Aggregator (net.opentsdb.core.Aggregator)1 Query (net.opentsdb.core.Query)1 TSDB (net.opentsdb.core.TSDB)1 TSQuery (net.opentsdb.core.TSQuery)1 TSSubQuery (net.opentsdb.core.TSSubQuery)1 TopNSortingEntry (net.opentsdb.query.expression.HighestMax.TopNSortingEntry)1