Skip to content

Commit 9861ef0

Browse files
committed
Batch publishing in test method
1 parent 4cf6f2f commit 9861ef0

File tree

1 file changed

+16
-3
lines changed

1 file changed

+16
-3
lines changed

src/test/java/com/rabbitmq/stream/impl/TestUtils.java

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -207,9 +207,22 @@ static void publishAndWaitForConfirms(
207207
cf.get(new Client.ClientParameters().publishConfirmListener(publishConfirmListener));
208208

209209
client.declarePublisher(b(1), null, stream);
210-
for (int i = 1; i <= publishCount; i++) {
211-
Message message = messageFactory.apply(client.messageBuilder());
212-
client.publish(b(1), Collections.singletonList(message));
210+
int batchSize = 100;
211+
if (publishCount > batchSize) {
212+
List<Message> messages = new ArrayList<>(batchSize);
213+
for (int i = 1; i <= publishCount; i++) {
214+
Message message = messageFactory.apply(client.messageBuilder());
215+
messages.add(message);
216+
if (i % batchSize == 0 || i == publishCount) {
217+
client.publish(b(1), messages);
218+
messages.clear();
219+
}
220+
}
221+
} else {
222+
for (int i = 1; i <= publishCount; i++) {
223+
Message message = messageFactory.apply(client.messageBuilder());
224+
client.publish(b(1), Collections.singletonList(message));
225+
}
213226
}
214227

215228
latchAssert(latchConfirm).completes(timeout);

0 commit comments

Comments
 (0)