RocketMQ integration for Apache Flink. This module includes the RocketMQ source and sink that allows a flink job to either write messages into a topic or read from topics in a flink job.
When master is down, the result of step4 is null, and then step3 will throw MQClientException("The broker[" + mq.getBrokerName() + "] not exist", null), and then RocketMQSource will crash.
So, if master down, not flink consumer will consume from slave, flink consumer will crash, is this properly?
I see the steps of RocketMQSource are:
long offset = getMessageQueueOffset(mq);
offset = consumer.searchOffset(mq);
(maxOffset, minOffset as well)org.apache.rocketmq.client.impl.MQAdminImpl#searchOffset
String brokerAddr = this.mQClientFactory.findBrokerAddressInPublish(mq.getBrokerName());
In
findBrokerAddressInPublish
, will only get master address or null.When master is down, the result of step4 is null, and then step3 will throw
MQClientException("The broker[" + mq.getBrokerName() + "] not exist", null)
, and then RocketMQSource will crash.So, if master down, not flink consumer will consume from slave, flink consumer will crash, is this properly?