OASIS Advanced Message Queuing Protocol (AMQP) TC: OASIS AMQP TC specification and document repository. AMQP is a secure, reliable and open internet protocol for handling business messaging. https://github.com/oasis-tcs/amqp-specs
In the section "3.1 Connection and Link Capabilities" we, somehow, mention the "offered-capabilities" that the event log node MUST fill with AMQP_EVENT_STREAMS_V1_0 for announcing that it supports the event streams specification.
Should we also mention that a sender/receiver can specify the same in the open frame in the "desired-capabilities" so that if the AMQP node can just shutdowns the connection if it doesn't support that?
Talking about consumer groups, the section 4.5.1 says:
The event log node MAY also attach consumer group links without binding them to a specific partition, allowing for multiple partitions to be associated with a link and for those binding to change dynamically without having to reestablish the link.
So AFAIU the link is not bounded to any partition but anyway the consumer can get messages from more than one partition and it knows about that only in the event-streams-source-partition during message transfer.
Is that right?
Thinking about a possible Kafka implementation of this, a Kafka consumer knows about the assigned partitions since the beginning (and even the revoked ones) during a rebalance; it doesn't get the information only when a message is consumed.
I was wondering if we could provide the list of assigned partitions (as we have with event-streams-partition in section 4.3).
The problem could be about as mentioned above ... "change dynamically without having to reestablish the link" ... so how to update the consumer with the new partitions if they changed.