Skip to content

Precompiled 2024-04-11-4496d46

Compare
Choose a tag to compare
@github-actions github-actions released this 11 Apr 00:51
· 3108 commits to main since this release
[Fix] Shutdown + join futures on `retention_manager` shutdown (#24515)

It turns out that if we don't join a handle after shutdown, it can still perform work after the worker that created it has been dropped. So, I refactored the retention manager code to join all of its handles on shutdown.

Its slightly concerning that we use this same pattern of calling `.shutdown()` in other places without joining the future because we can't guarantee that the handle stops doing work before the creator goes away. Should we try to get rid of this pattern entirely?

Intuitively speaking it would seem that calling `.shutdown()` would terminate a thread synchronously, but this is not actually what happens.

GitOrigin-RevId: db38a2e748ebd958f6be2cde8258f7ae2f1ce00e