Skip to content
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

Extend delete extension point to more easily allow users to hook the actual delete entirely #3471

Open
matthchr opened this issue Oct 27, 2023 · 1 comment

Comments

@matthchr
Copy link
Member

matthchr commented Oct 27, 2023

Describe the current behavior
#3467 merged support for deleting subscriptions owned by APIM products, but it did so in a way that results in a double DELETE HTTP request being sent.

It did this because it's easier to call next and delegate the tracking of the various delete states to ASO. But it would be ideal if there were a way to allow the extension to totally own the delete (thereby avoiding double-delete).

Describe the improvement
@theunrepentantgeek suggested some sort of return-result paradigm where the extension could signal to the caller if it did or did not issue the delete (and possibly return a future to poll if it did, for LRO cases?), and then the ASO infrastructure could do the bookkeeping.

If we do the above, we should update the changes made in #3467 to move to a single delete. This has advantages for error reporting as well as API throttling.

@matthchr matthchr added this to the v2.5.0 milestone Oct 30, 2023
@matthchr matthchr changed the title Prevent double-delete of APIM products Extend delete extension point to more easily allow users to hook the actual delete entirely Oct 30, 2023
@theunrepentantgeek theunrepentantgeek modified the milestones: v2.6.0, v2.7.0 Dec 11, 2023
@matthchr matthchr removed this from the v2.7.0 milestone Feb 22, 2024
@matthchr
Copy link
Member Author

This is still something we're interested in doing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

No branches or pull requests

2 participants