Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
osd, messages/MOSDPing: bunch of fixes related to ping inflation #15727
For users who don't care about jumbo frames, or are certain that their setup is correct, the new diagnostic feature (#15535) will provide only unnecessary load. Due to a bug, users can't really disable it and this PR fixes this. Because both "osd heartbeat interval" and "osd heartbeat min size" aren't marked as observed, this causes confusion for users who try to change them at runtime (new options values are used, but the message makes this uncertain). Finally, initial code for heartbeat inflater was slightly optimized to not move dummy data as often.
Signed-off-by: Piotr Dałek email@example.com
Not quite right.
In addition to the specific code thing, people want to backport this. So I'd actually prefer we just don't reorder stuff, or that we do it as another version increment. So HEADER_VERSION 3 could be adding the buffer pointer to increase the size, and keep a COMPAT_VERSION 2.
And then HEADER_VERSION 4 could remove the dummy_epoch and dummy_stat and change COMPAT_VERSION to 4. Is that reasonable?
I was thinking about this when setting up the minimum size stuff. Basically, we're pinging all our peers every 5 seconds. So if we've got 100 PGs/OSD (more than most?), that's 20 every second. 240 bytes, or with the minimum size some 40000 bytes. (<40KB, out of 125 or 1250 MB).
That said, I don't think the extra versioning actually changes much, just the values which get put in the if-block you already set up. (We can append extra data and older nodes will just ignore it, remember.)