generator: Free recurrent state after job completed (prevent memory leak with large job queue)

This commit is contained in:
turboderp
2026-01-11 17:38:15 +01:00
parent e69d91b12b
commit 9043690801
2 changed files with 4 additions and 0 deletions

View File

@@ -572,6 +572,7 @@ class Generator:
num_jobs = self.num_remaining_jobs()
for job in completed_jobs + requeuing_jobs:
job.deallocate_pages()
job.free_recurrent_state()
self.active_jobs.remove(job)
# Requeue jobs

View File

@@ -1096,3 +1096,6 @@ class Job:
page = seq.allocated_pages[last_page]
assert page.kv_position == PAGE_SIZE
cache.stash(page.phash, self.recurrent_state)
def free_recurrent_state(self):
self.recurrent_state = None