microsoft / durabletask-mssql

Microsoft SQL storage provider for Durable Functions and the Durable Task Framework
MIT License
87 stars 32 forks source link

Support rewinding orchestrations #96

Closed Greybird closed 2 years ago

Greybird commented 2 years ago

Should fix #66.

I tried to mimic as much as possible the table storage implementation. However, I'm pretty sure there is lot of room for improvement, so please don't hesitate to tell me where, and I'll try to enhance the proposal.

Known limitation:

ghost commented 2 years ago

CLA assistant check
All CLA requirements met.

cgillum commented 2 years ago

Thanks for this contribution! I did a quick scan of the changes and I don't have any issues with your approach. In the fullness of time, we're thinking of changing how we implement rewind to be storage provider-agnostic, but I think this implementation should be good enough for a preview-quality feature until we get around to a more generic overhaul.

Greybird commented 2 years ago

I think I took care of your current comments. Feel free to tell me if more is needed.

It's a great thing that Rewind is being worked on, to me it is a key feature of durable functions! Even better if it can be done in a storage-agnostic way!

cgillum commented 2 years ago

In an effort to make some small changes to your PR, it seems I've accidentally also merged in the latest from the main branch. Sorry about the noise it's causing on this PR. I'm basically good with these changes and will just do a few manual tests before signing off and merging.