If the number of prewarm runtime pods is small, after executed helm delete(or uninstall) xxx, all prewarm runtime pods are deleted completely.
But if the number of prewarm runtime pods is big, after executed helm delete(or uninstall) xxx, some prewarm runtime pods are not deleted completely.(e.g. maybe 1/3 prewarm pods are deleted, 2/3 prewarm pods are not deleted, still Running)
The reason is
After analized the kubernets-client-4.4.2.jar source codes, when invoke below codes
Finally, it will invoke below codes
We can see, it deletes the runtime pods in a for statement, on the other hand, h.delete(client, ...) method is a sync method, due to some configuration of timeout is low, it leads to can't delete all runtime pods(When timeout happens, above for statement is not executed finished)
I will open 2 prs to solve this issue
if increase the timeout value, can delete all runtime pods successfully, e.g.
values.yaml
If the number of prewarm runtime pods is small, after executed
helm delete(or uninstall) xxx
, all prewarm runtime pods are deleted completely.But if the number of prewarm runtime pods is big, after executed
helm delete(or uninstall) xxx
, some prewarm runtime pods are not deleted completely.(e.g. maybe 1/3 prewarm pods are deleted, 2/3 prewarm pods are not deleted, still Running)The reason is After analized the kubernets-client-4.4.2.jar source codes, when invoke below codes
Finally, it will invoke below codes We can see, it deletes the runtime pods in a for statement, on the other hand,
h.delete(client, ...)
method is a sync method, due to some configuration of timeout is low, it leads to can't delete all runtime pods(When timeout happens, abovefor
statement is not executed finished)I will open 2 prs to solve this issue
if increase the timeout value, can delete all runtime pods successfully, e.g. values.yaml