Ability to ReadAsync from MemoryStoreQueue without it getting marked as Invisible

This stems from me trying to set invisibilityTimeout=0 when GetQueue but I ran into this issue: Memory Store Queue doesn't properly dequeue?

tl;dr; It creates more issue to have a queue system with invisibilityTimeout = 0 instead of just providing a method to read the queue without marking them invisible.

I want to frequently read the items in a queue until I need to process them. I’ve tried using SortedMap for this but I keep running into DataUpdateConflict

Having this ability to read without mark invisible will allow me to separate the reading section of my system with the processing section of my system while still using the same queue.

For this example it’ll be MemoryStoreQueue:RawReadAsync(count: number, allOrNothing: boolean, waitTimeout: number)

I’m guessing sequential :ReadAsync() calls are processed serially in the backend right? So there shouldn’t be any issues if :RawReadAsync() & :ReadAsync() are called at the same time, one just comes after the other.

If this is not a feasible feature, please do let me know, I want to learn more.

Thanks~
Khronos

7 Likes

My current work around is to read and remove a 100 queue items and then re-add them if I don’t need to process them.

3 Likes