Hi folks, Background
Now that the apisix admin api has a binding relationship. For example, there is an upstream id in a route, and if you want to delete the upstream pointed to by this upstream id, you have to delete the route first, otherwise you will get an error like this "can not delete this upstream ……" Related to this, apisix also has a problem where the admin api interface updates the cache asynchronously (around 0.1s) for objects that have an associated relationship. This means that even if you delete the route and then delete the upstream within the asynchronous cache update time period, you will still get "can not delete this upstream ......" Solution to discuss We can provide an option like admin_api_object_bind (default is true). When admin_api_object_bind is false , the bindings are not checked when using the admin api, so that even if the upstream id in the route is bound to the upstream, you can still delete the upstream without getting an error. If admin_api_object_bind is true, the bindings will be checked as they are now. This will cause considerable changes to the CP side and DP side of apisix. Would love to hear the community's thoughts on this. also let me know if I am wrong. Looking forward to hearing from you. Thanks.