UNPKG

@ydbjs/topic

Version:

YDB Topics client for publish-subscribe messaging. Provides at-least-once delivery, exactly-once publishing, FIFO guarantees, and scalable message processing for unstructured data.

20 lines 733 B
import { _batch_messages } from "./_batch_messages.js"; import { _emit_write_request } from "./_write_request.js"; export const _flush = function flush(ctx) { if (!ctx.buffer.length) { return; // Nothing to flush } let messagesToSend = []; while (ctx.inflight.length < ctx.throughputSettings.maxInflightCount) { let message = ctx.buffer.shift(); if (!message) { break; // No more messages to send } ctx.inflight.push(message); messagesToSend.push(message); } for (let batch of _batch_messages(messagesToSend)) { _emit_write_request(ctx, batch); // Emit the write request with the batch of messages } }; //# sourceMappingURL=_flush.js.map