ENT-6511: Increase cf-monitord measurement slots from 100 to 300 - #6239
ENT-6511: Increase cf-monitord measurement slots from 100 to 300#6239nickanderson wants to merge 2 commits into
Conversation
50d4f8a to
2fbdc3d
Compare
|
@cf-bottom jenkins please. |
|
Sure, I triggered a build: Jenkins: https://ci.cfengine.com/job/pr-pipeline/14244/ Packages: http://buildcache.cfengine.com/packages/testing-pr/jenkins-pr-pipeline-14244/ |
1a91252 to
5f4e187
Compare
|
@cf-bottom jenkins please. |
|
Alright, I triggered a build: Jenkins: https://ci.cfengine.com/job/pr-pipeline/14253/ Packages: http://buildcache.cfengine.com/packages/testing-pr/jenkins-pr-pipeline-14253/ |
5f4e187 to
fa550dd
Compare
~80 of the 100 slots are consumed by default measurements, leaving little room for custom ones. Raise the limit to 300. Kept in sync: CF_OBSERVABLES and the two cf-check copies of the on-disk struct, plus the OBSERVABLES name table (GetObservable() indexes it for unregistered slots, so a short table crashes cf-monitord). cf-check also pads a pre-upgrade ts_key that has fewer entries than CF_OBSERVABLES. Ticket: ENT-6511 Changelog: Increased the maximum number of cf-monitord measurement slots (CF_OBSERVABLES) from 100 to 300
Raising CF_OBSERVABLES enlarges the fixed-size Averages record, so records written by an older agent are shorter than the current struct. Added a migration (modelled on dbm_migration_lastseen.c) that rewrites old records to the current size, zero-filling the new slots, registered for the observations and history DBs. cf-check dump only needs to recognise the new "version" key the migration writes. Ticket: ENT-6511 Changelog: None
fa550dd to
d278e7e
Compare
|
@cf-bottom Jenkins please :) |
|
Sure, I triggered a build: Jenkins: https://ci.cfengine.com/job/pr-pipeline/14272/ Packages: http://buildcache.cfengine.com/packages/testing-pr/jenkins-pr-pipeline-14272/ |
|
@cf-bottom Jenkins please :) |
|
Alright, I triggered a build: Jenkins: https://ci.cfengine.com/job/pr-pipeline/14345/ Packages: http://buildcache.cfengine.com/packages/testing-pr/jenkins-pr-pipeline-14345/ |
Raises
CF_OBSERVABLESfrom 100 to 300. Previously out of the box ~80 of the 100 slots are consumed by default measurements, leaving only ~19 for custommeasurements:promises.Notably, this change does increase the disk footprint required by an agent by
60MB (.27MB per slot). That storage is required even if the slots are not in active use (Ref: ENT-14329)Ticket: ENT-6511