Search in sources :

Example 11 with GlobalPartitionInformation

use of org.apache.storm.kafka.trident.GlobalPartitionInformation in project heron by twitter.

the class DynamicBrokersReaderTest method testGetBrokerInfo.

@Test
public void testGetBrokerInfo() throws Exception {
    String host = "localhost";
    int port = 9092;
    int partition = 0;
    addPartition(partition, host, port, topic);
    List<GlobalPartitionInformation> partitions = dynamicBrokersReader.getBrokerInfo();
    GlobalPartitionInformation brokerInfo = getByTopic(partitions, topic);
    assertNotNull(brokerInfo);
    assertEquals(1, brokerInfo.getOrderedPartitions().size());
    assertEquals(port, brokerInfo.getBrokerFor(partition).port);
    assertEquals(host, brokerInfo.getBrokerFor(partition).host);
}
Also used : GlobalPartitionInformation(org.apache.storm.kafka.trident.GlobalPartitionInformation) Test(org.junit.Test)

Example 12 with GlobalPartitionInformation

use of org.apache.storm.kafka.trident.GlobalPartitionInformation in project heron by twitter.

the class DynamicBrokersReaderTest method testMultiplePartitionsOnSameHost.

@Test
public void testMultiplePartitionsOnSameHost() throws Exception {
    String host = "localhost";
    int port = 9092;
    int partition = 0;
    int secondPartition = partition + 1;
    addPartition(partition, 0, host, port, topic);
    addPartition(secondPartition, 0, host, port, topic);
    List<GlobalPartitionInformation> partitions = dynamicBrokersReader.getBrokerInfo();
    GlobalPartitionInformation brokerInfo = getByTopic(partitions, topic);
    assertNotNull(brokerInfo);
    assertEquals(2, brokerInfo.getOrderedPartitions().size());
    assertEquals(port, brokerInfo.getBrokerFor(partition).port);
    assertEquals(host, brokerInfo.getBrokerFor(partition).host);
    assertEquals(port, brokerInfo.getBrokerFor(secondPartition).port);
    assertEquals(host, brokerInfo.getBrokerFor(secondPartition).host);
}
Also used : GlobalPartitionInformation(org.apache.storm.kafka.trident.GlobalPartitionInformation) Test(org.junit.Test)

Example 13 with GlobalPartitionInformation

use of org.apache.storm.kafka.trident.GlobalPartitionInformation in project heron by twitter.

the class DynamicBrokersReaderTest method testSwitchHostForPartition.

@Test
public void testSwitchHostForPartition() throws Exception {
    String host = "localhost";
    int port = 9092;
    int partition = 0;
    addPartition(partition, host, port, topic);
    List<GlobalPartitionInformation> partitions = dynamicBrokersReader.getBrokerInfo();
    GlobalPartitionInformation brokerInfo = getByTopic(partitions, topic);
    assertNotNull(brokerInfo);
    assertEquals(port, brokerInfo.getBrokerFor(partition).port);
    assertEquals(host, brokerInfo.getBrokerFor(partition).host);
    String newHost = host + "switch";
    int newPort = port + 1;
    addPartition(partition, newHost, newPort, topic);
    partitions = dynamicBrokersReader.getBrokerInfo();
    brokerInfo = getByTopic(partitions, topic);
    assertNotNull(brokerInfo);
    assertEquals(newPort, brokerInfo.getBrokerFor(partition).port);
    assertEquals(newHost, brokerInfo.getBrokerFor(partition).host);
}
Also used : GlobalPartitionInformation(org.apache.storm.kafka.trident.GlobalPartitionInformation) Test(org.junit.Test)

Example 14 with GlobalPartitionInformation

use of org.apache.storm.kafka.trident.GlobalPartitionInformation in project heron by twitter.

the class KafkaUtilsTest method setup.

@Before
public void setup() {
    broker = new KafkaTestBroker();
    GlobalPartitionInformation globalPartitionInformation = new GlobalPartitionInformation(TEST_TOPIC);
    globalPartitionInformation.addPartition(0, Broker.fromString(broker.getBrokerConnectionString()));
    brokerHosts = new StaticHosts(globalPartitionInformation);
    config = new KafkaConfig(brokerHosts, TEST_TOPIC);
    simpleConsumer = new SimpleConsumer("localhost", broker.getPort(), 60000, 1024, "testClient");
}
Also used : GlobalPartitionInformation(org.apache.storm.kafka.trident.GlobalPartitionInformation) SimpleConsumer(kafka.javaapi.consumer.SimpleConsumer) Before(org.junit.Before)

Example 15 with GlobalPartitionInformation

use of org.apache.storm.kafka.trident.GlobalPartitionInformation in project heron by twitter.

the class KafkaUtilsTest method assignInvalidTask.

@Test(expected = IllegalArgumentException.class)
public void assignInvalidTask() {
    GlobalPartitionInformation globalPartitionInformation = new GlobalPartitionInformation(TEST_TOPIC);
    List<GlobalPartitionInformation> partitions = new ArrayList<GlobalPartitionInformation>();
    partitions.add(globalPartitionInformation);
    KafkaUtils.calculatePartitionsForTask(partitions, 1, 1);
}
Also used : GlobalPartitionInformation(org.apache.storm.kafka.trident.GlobalPartitionInformation) ArrayList(java.util.ArrayList) Test(org.junit.Test)

Aggregations

GlobalPartitionInformation (org.apache.storm.kafka.trident.GlobalPartitionInformation)25 Test (org.junit.Test)14 ArrayList (java.util.ArrayList)10 SimpleConsumer (kafka.javaapi.consumer.SimpleConsumer)3 SocketTimeoutException (java.net.SocketTimeoutException)2 TopicAndPartition (kafka.common.TopicAndPartition)2 Before (org.junit.Before)2 UnsupportedEncodingException (java.io.UnsupportedEncodingException)1