orleans icon indicating copy to clipboard operation
orleans copied to clipboard

PersistentStreamPullingAgent does not Unregister itself as producer when no cunsumers left.

Open marcelk-workstreampeople-com opened this issue 2 years ago • 2 comments

I have an issue when using Azure Blob Storage for PubSubStore in combination with Azure Storage Queues for Streams.

When the last consumer is unregistered from a stream, PersistentStreamPullingAgent removes the streamId from its cache.

image

When the agent is shutdown it is unable to remove itself as a producer from that stream anymore because it is removed from cache

image

Due to this behaviour, the blobs in the PubSubStore are not removed, beacause there will always be a producer for that stream.

Hi @rafikiassumani-msft

Since 3.6.3 is released now, does that mean that this open issue will be moved to 3.6.4 milestone?

Thanks in advance

Unfortunately, the issue is more difficult to fix than expected.

The logic in PersistentStreamPullingAgent is a bit complicated, and the the risk is too high to introduce another bug to fix this issue.

We hope to fix that in the future, with a rewrite of the PersistentStreamPullingAgent

benjaminpetit avatar Aug 10 '22 19:08 benjaminpetit