Skip to content

Dynamic clusters add/remove, stats, and hot restart #330

@mattklein123

Description

@mattklein123

It occurred to me that there are some pretty serious issues around how we currently handle stats and hot restart as it relates to dynamically adding/removing clusters.

Primarily, stats are currently allocated entirely in shared memory from a fixed pool. There is no way to free them. We will quickly run out of space in the pool if we add/remove clusters. So we need rethink how this mechanism works. I haven't thought it through fully yet but I wanted to at least get the issue opened. I think we probably need a way to reference count the stats in shared memory and then have the ability to free them (when we remove a cluster). Even that is complicated, because if they are freed before they are flushed it will cause accounting issues.

Beyond stats, there are further issues around initialization in general when using CDS clusters. This is particularly important during hot restart. We probably need the ability to do an init pass at boot for CDS, then an init pass on all the discovered clusters like we do for static clusters.

Metadata

Metadata

Assignees

Labels

enhancementFeature requests. Not bugs or questions.

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions