-
Notifications
You must be signed in to change notification settings - Fork 36
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DurableTaskClient.PurgeAllInstancesAsync: NotSupportedException and RpcException for .net 8 isolated #282
DurableTaskClient.PurgeAllInstancesAsync: NotSupportedException and RpcException for .net 8 isolated #282
Comments
I've encountered this issue as well. Rolling back |
I ran into this too. Getting |
Looks like this change caused this: v1.1.1...v1.2.0#diff-c7a6ad429a79519f6c23e141c7d033c7066d66ef34af21302c877fbdd62171c7R373 |
I would like to confirm the issue. Because of this, we cannot delete the orchestrator instances anymore. As these instances contain PII-data and therefore we are not GDPR-compliant anymore. public virtual Task<PurgeResult> PurgeInstanceAsync(
string instanceId, PurgeInstanceOptions? options = null, CancellationToken cancellation = default)
{
throw new NotSupportedException($"{this.GetType()} does not support purging of orchestration instances.");
}
public virtual Task<PurgeResult> PurgeAllInstancesAsync(
PurgeInstancesFilter filter, PurgeInstanceOptions? options = null, CancellationToken cancellation = default)
{
throw new NotSupportedException($"{this.GetType()} does not support purging of orchestration instances.");
} For now, we are falling back to another version (1.1.1 also fixes the issue) as @dunxbc mentioned in hit post above. |
Thanks all, sorry we did not catch this. I'll see if we can fix this in our upcoming releae. |
For me it was enough to downgrade package |
This fix doesn't appear to have made it into 1.1.3, any idea when we'll get it? (unless Edit: just had a look at the Edit 2: Just seen 1.2.3 release notes |
I am running into same sort of problem when upgrading from to the latest version. But then with a |
I'm able to reproduce the issue with Terminate - I was focused only on the purging issue (as in the title) so I missed Terminate had regressed on that same PR. Sorry folks, I'm looking to see if we can implement some kind of breaking change analyzer in the CI to prevent this in the future (not sure if this is the right approach yet) but I'm on it nonetheless. |
@gfgw I'm currently using |
Still getting the error in Net 8 (Isolated):
Dependencies
we are getting this issue when executing: ` var filter = new PurgeInstancesFilter(
` is there a fix for this?, thanks in advance |
I was also getting the same thing in .Net 8 Isolated. I've tried to work around it by getting a list of all the completed orchestrator instances and purging them individually. I'm no longer getting that error message, but it's also not finding all of the completed orchestrators.
|
Just been doing some more debugging, it looks like if I remove the reference to the task hub when calling GetAllInstancesAsync() it will return all the completed orchestrators correctly. If I add the reference back in it doesn't find any. I've made sure I'm using the correct task hub name. This finds all the completed orchestrators.
This doesn't find any completed orchestrators.
|
Why is this issue closed? Still an issue in version Using .NET 8 isolated worker method
EDIT Resolved for now by first doing a GET instances and then run the |
@andystaples let’s take a closer look at the issues mentioned here as part of the e2e testing work that you’re doing. |
@davidmrdavid yes correct. Here is my code sample:
Which results in:
|
Some more testing results:
Also when using the method So I will switch back to the |
Thanks for letting us know. @andystaples - please make sure this is tracked, thanks :-) |
I am periodically purging instances and old history of my durable function runs. We noticed that this logic stopped working some time ago.
Runtime:
.net 8 isolated azure function
Dependencies:
My TimerTrigger Azure Function which is implemented next to my durable function looks likes this:
This code worked at some point and was initially developed as .Net 7 isolated function.
Now i am getting a System.NotSupportedException:
Microsoft.Azure.Functions.Worker.FunctionsDurableTaskClient does not support purging of orchestration instances.
The implementation of
DurableTaskClient.PurgeAllInstancesAsync
is very confusing.Example:
FunctionsDurableTaskClient implements:
Task<PurgeResult> PurgeAllInstancesAsync(PurgeInstancesFilter filter, CancellationToken cancellation)
but not
public virtual Task<PurgeResult> PurgeAllInstancesAsync( PurgeInstancesFilter filter, PurgeInstanceOptions? options = null, CancellationToken cancellation = default)
So calling:
client.PurgeAllInstancesAsync(new PurgeInstancesFilter(...), CancellationToken.None);
andclient.PurgeAllInstancesAsync(new PurgeInstancesFilter(...));
makes an unexpected difference.
On top, i am getting a
RpcException
with {"Status(StatusCode="Unknown", Detail="Exception was thrown by handler.")"} locally and on Azure.I would greatly appreciate some help getting this purge implementation up and running.
The text was updated successfully, but these errors were encountered: