apache / apache/pulsar-client-go

Add support for batch receiving messages

Open
#892 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
745
Forks
389
Avg merge
3d 20h
Merged PRs (30d)
3

Description

I want to use a combination of receiver queue size and timeout but I dont see how to set timeout in the Golang client api where I can say buffer until 500ms if the receiver queue size is not full. This is very important for downstream OLAP databases which cannot handle fine grained writes.

This feature is really important and it's surprising that the Golang client API doesn't expose this.

Contributor guide

Open the contributing guide

Research direction

Start by locating the Go client receiver API and its receiver queue-size configuration, then inspect any existing receiver tests. Define how a timeout combines with the queue limit so messages can be buffered for up to 500ms, and consider the downstream batching use case described in the issue. Done means the client exposes this behavior and tests cover both a full queue and timeout-triggered delivery.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
distributed-systems
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.