diff --git a/carrera-sdk/producer/java/carrera-producer-sdk/src/main/java/com/xiaojukeji/carrera/producer/CarreraProducerBase.java b/carrera-sdk/producer/java/carrera-producer-sdk/src/main/java/com/xiaojukeji/carrera/producer/CarreraProducerBase.java index e85e619..8205e8d 100644 --- a/carrera-sdk/producer/java/carrera-producer-sdk/src/main/java/com/xiaojukeji/carrera/producer/CarreraProducerBase.java +++ b/carrera-sdk/producer/java/carrera-producer-sdk/src/main/java/com/xiaojukeji/carrera/producer/CarreraProducerBase.java @@ -261,10 +261,11 @@ public Result sendBatchConcurrently(List messages) { } Map> msgMap = new HashMap<>(); for (Message msg : messages) { - List msgList = msgMap.get(msg.getHashId() % config.getBatchSendThreadNumber()); + Long key = msg.getHashId() % config.getBatchSendThreadNumber(); + List msgList = msgMap.get(key); if (msgList == null) { msgList = new ArrayList<>(); - msgMap.put(msg.getHashId(), msgList); + msgMap.put(key, msgList); } msgList.add(msg); } @@ -608,4 +609,4 @@ private DelayResult sendDelayMessage(DelayMessage message) { } return result; } -} \ No newline at end of file +}