fixed issue #2286 , ArithmeticException zero

This commit is contained in:
agapple
2019-10-10 15:37:17 +08:00
parent 31562919bb
commit b64a3e301a

View File

@@ -249,8 +249,14 @@ public class CanalRocketMQProducer extends AbstractMQProducer implements CanalMQ
// 批量发送 // 批量发送
List<MessageQueue> queues = topicInfo.getMessageQueueList(); List<MessageQueue> queues = topicInfo.getMessageQueueList();
int size = queues.size(); int size = queues.size();
if (size <= 0) {
// 可能是第一次创建
for (Message message : messages) {
sendMessage(message, partition);
}
} else {
MessageQueue queue = null; MessageQueue queue = null;
if (partition > queues.size()) { if (partition > size) {
queue = queues.get(partition % size); queue = queues.get(partition % size);
} else { } else {
queue = queues.get(partition); queue = queues.get(partition);
@@ -266,6 +272,7 @@ public class CanalRocketMQProducer extends AbstractMQProducer implements CanalMQ
} }
} }
} }
}
@Override @Override
public void stop() { public void stop() {