Skip to content
This repository was archived by the owner on Nov 20, 2025. It is now read-only.
This repository was archived by the owner on Nov 20, 2025. It is now read-only.

Remove the "state" from a PullConsumer #42

@mmmries

Description

@mmmries

I'm working on #36 and thinking about #41 and one thing that feels a bit awkward to me is the fact that our init/1 callback returns a state term which is then passed in as an argument whenever a message is received.

This feels awkward to me because our PullConsumer can start at any point in the message history, and when we start supporting parallel message processing, which version of the state will we pass to the next message? Will we try to merge the returned state of the different messages that were running in parallel?

I'm thinking that because this consumer might be starting at any point in the stream (including cases like a crash and restart), your application would have to be designed to manage long-lived state somewhere outside the PullConsumer anyway? But, maybe I'm just missing some context about how you plan to use this in the use case that @mkaput and @sswrk are working towards?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions