[KYUUBI #6320] Fix terminated application pods not deleted issue when kyuubi server restarted
# 🔍 Description ## Issue References 🔗 This pull request fixes # We found that some pods were not deleted if kyuubi server restarted The root cause is that: com.google.common.cache::cleanup will not trigger removalListener action, we shall use `invalidateAll` instead. Testing: Nothing print for below code: ``` import com.google.common.cache.{Cache, CacheBuilder, RemovalNotification} var removed = 0 val cache: Cache[String, String] = CacheBuilder.newBuilder() .removalListener((notification: RemovalNotification[String, String]) => { removed += 1 println("removed: " + removed) }).build() (0 until 1000).foreach { i => cache.put(i.toString, i.toString) } cache.cleanup() ``` Replacing `cache.cleanup()` with `cache.invalidateAll()`, the output is expected. ## Describe Your Solution 🔧 Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change. ## Types of changes 🔖 - [ ] Bugfix (non-breaking change which fixes an issue) - [ ] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to change) ## Test Plan 🧪 #### Behavior Without This Pull Request ⚰️ #### Behavior With This Pull Request 🎉 #### Related Unit Tests --- # Checklist 📝 - [ ] This patch was not authored or co-authored using [Generative Tooling](https://www.apache.org/legal/generative-tooling.html) **Be nice. Be informative.** Closes #6319 from turboFei/app_k8s_leak. Closes #6320 ff2adfc60 [Wang, Fei] invalidate all Authored-by: Wang, Fei <fwang12@ebay.com> Signed-off-by: Cheng Pan <chengpan@apache.org>
This commit is contained in:
parent
8b2bcfa9b6
commit
26fe59d694
@ -265,7 +265,7 @@ class KubernetesApplicationOperation extends ApplicationOperation with Logging {
|
||||
enginePodInformers.clear()
|
||||
|
||||
if (cleanupTerminatedAppInfoTrigger != null) {
|
||||
cleanupTerminatedAppInfoTrigger.cleanUp()
|
||||
cleanupTerminatedAppInfoTrigger.invalidateAll()
|
||||
cleanupTerminatedAppInfoTrigger = null
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user