Search in sources :

Example 46 with Tuple

use of backtype.storm.tuple.Tuple in project heron by twitter.

the class OutputCollectorImpl method emit.

@Override
public List<Integer> emit(String streamId, Collection<Tuple> anchors, List<Object> tuple) {
    if (anchors != null) {
        ArrayList<com.twitter.heron.api.tuple.Tuple> l = new ArrayList<com.twitter.heron.api.tuple.Tuple>();
        for (Tuple t : anchors) {
            TupleImpl i = (TupleImpl) t;
            l.add(i.getDelegate());
        }
        return delegate.emit(streamId, l, tuple);
    } else {
        return delegate.emit(streamId, (Collection<com.twitter.heron.api.tuple.Tuple>) null, tuple);
    }
}
Also used : ArrayList(java.util.ArrayList) TupleImpl(backtype.storm.tuple.TupleImpl) Tuple(backtype.storm.tuple.Tuple)

Example 47 with Tuple

use of backtype.storm.tuple.Tuple in project pulsar by yahoo.

the class PulsarBoltTest method testBasic.

@Test
public void testBasic() throws Exception {
    String msgContent = "hello world";
    Tuple tuple = getMockTuple(msgContent);
    bolt.execute(tuple);
    for (int i = 0; i < NO_OF_RETRIES; i++) {
        Thread.sleep(1000);
        if (mockCollector.acked()) {
            break;
        }
    }
    Assert.assertTrue(mockCollector.acked());
    Assert.assertFalse(mockCollector.failed());
    Assert.assertNull(mockCollector.getLastError());
    Assert.assertEquals(tuple, mockCollector.getAckedTuple());
    Message msg = consumer.receive(5, TimeUnit.SECONDS);
    consumer.acknowledge(msg);
    Assert.assertEquals(msgContent, new String(msg.getData()));
}
Also used : Message(com.yahoo.pulsar.client.api.Message) Tuple(backtype.storm.tuple.Tuple) Test(org.testng.annotations.Test)

Example 48 with Tuple

use of backtype.storm.tuple.Tuple in project pulsar by yahoo.

the class PulsarBoltTest method testExecuteFailure.

@Test
public void testExecuteFailure() throws Exception {
    String msgContent = "throw exception";
    Tuple tuple = getMockTuple(msgContent);
    bolt.execute(tuple);
    Assert.assertFalse(mockCollector.acked());
    Assert.assertTrue(mockCollector.failed());
    Assert.assertNotNull(mockCollector.getLastError());
}
Also used : Tuple(backtype.storm.tuple.Tuple) Test(org.testng.annotations.Test)

Example 49 with Tuple

use of backtype.storm.tuple.Tuple in project pulsar by yahoo.

the class PulsarBoltTest method testMetrics.

@Test
public void testMetrics() throws Exception {
    bolt.resetMetrics();
    String msgContent = "hello world";
    Tuple tuple = getMockTuple(msgContent);
    for (int i = 0; i < 10; i++) {
        bolt.execute(tuple);
    }
    for (int i = 0; i < NO_OF_RETRIES; i++) {
        Thread.sleep(1000);
        if (mockCollector.getNumTuplesAcked() == 10) {
            break;
        }
    }
    @SuppressWarnings("rawtypes") Map metrics = (Map) bolt.getValueAndReset();
    Assert.assertEquals(((Long) metrics.get(PulsarBolt.NO_OF_MESSAGES_SENT)).longValue(), 10);
    Assert.assertEquals(((Double) metrics.get(PulsarBolt.PRODUCER_RATE)).doubleValue(), 10.0 / pulsarBoltConf.getMetricsTimeIntervalInSecs());
    Assert.assertEquals(((Double) metrics.get(PulsarBolt.PRODUCER_THROUGHPUT_BYTES)).doubleValue(), ((double) msgContent.getBytes().length * 10) / pulsarBoltConf.getMetricsTimeIntervalInSecs());
    metrics = bolt.getMetrics();
    Assert.assertEquals(((Long) metrics.get(PulsarBolt.NO_OF_MESSAGES_SENT)).longValue(), 0);
    for (int i = 0; i < 10; i++) {
        Message msg = consumer.receive(5, TimeUnit.SECONDS);
        consumer.acknowledge(msg);
    }
}
Also used : Message(com.yahoo.pulsar.client.api.Message) Map(java.util.Map) Tuple(backtype.storm.tuple.Tuple) Test(org.testng.annotations.Test)

Aggregations

Tuple (backtype.storm.tuple.Tuple)49 Values (backtype.storm.tuple.Values)11 ArrayList (java.util.ArrayList)10 MessageId (backtype.storm.tuple.MessageId)5 List (java.util.List)5 Test (org.testng.annotations.Test)5 Message (com.yahoo.pulsar.client.api.Message)4 TupleImpl (backtype.storm.tuple.TupleImpl)3 TupleImplExt (backtype.storm.tuple.TupleImplExt)3 Pair (com.alibaba.jstorm.utils.Pair)3 HashMap (java.util.HashMap)3 Map (java.util.Map)3 GlobalStreamId (backtype.storm.generated.GlobalStreamId)2 FailedException (backtype.storm.topology.FailedException)2 TupleExt (backtype.storm.tuple.TupleExt)2 TimerTrigger (com.alibaba.jstorm.daemon.worker.timer.TimerTrigger)2 TopoMasterCtrlEvent (com.alibaba.jstorm.task.master.ctrlevent.TopoMasterCtrlEvent)2 RotatingMap (com.alibaba.jstorm.utils.RotatingMap)2 Pair (com.alipay.dw.jstorm.example.sequence.bean.Pair)2 TradeCustomer (com.alipay.dw.jstorm.example.sequence.bean.TradeCustomer)2