We have a situation in which we have 3 subscribers for the same document.As there are some limitations in subscribing side, it is expecting the transactions in sequence fashion and we should not process the later data until we fix the earlier failed transaction if there are any failures during the transmission/processing of the data.
For eg :
If the transmission from the source/processing on any subscriber fails, the publishing side should stop publishing and we have to first re-process the failed transaction before we publish any new data.
Another way to look at it is that the publisher can keep on publishing and it is the subscriber that needs to suspend pulling data from its queue. Its the subscriber that has the issue so why impact the publisher (and all other subscribers)?
Can you describe how the subscriber is processing messages from the Broker? Is the subscriber processing messages serially?
No all the subscribers are subscribing concurrently.But as I mentioned earlier I have a unique situation in which if any of the subscriber fails, my other subscribers should also stop processing or transmitting the data and I should re-process the failed data first.
If I allow the other subscribers to process all the document and if one of the subscribers fail, then if I have to reprocess the failed transaction on the un-successful subscriber, it will create duplicate entries on the other subscribers.
OK, there is a change in the problem description.
I am sorry for the confusion.
If one of the subscribers fail, then the other subscriber can continue the processing , also the publish service can continue delivering.
The only point is the failed subscriber should suspend all its remaining processing and should not process any further data