Project

General

Profile

Actions

Enhancement #23045

closed

Make commiting nodes to fact-repo optionnal

Added by François ARMAND over 1 year ago. Updated about 1 year ago.

Status:
Released
Priority:
N/A
Category:
Performance and scalability
Target version:
UX impact:
Suggestion strength:
User visibility:
Effort required:
Name check:
To do
Fix check:
Checked
Regression:
No

Description

Git management is complicated, and even with automatic GC, commiting all node information in `/var/rudder/fact-repository/nodes` is not working for high load and without manual maintenance. So it breaks rudder at unexpected point:

- it can make change longer to be processed, like parsing a new inventory or changing a node property, due to long git commit time,
- it can lead to hard to diagnose errors due to git lock problem, like in #20355 or #22616 - which is also a prove that in any case, we need to become better at automatic git ops in rudder
- maybe it's linked with strange inventory problems (#22246)

As for now, and contrary to config-repository, that repo is not used for user-facing features, we should:

- add a config option to disable the commit part,
- make the default be "do not commit". This means that by default, we won't have node property and inventory history stored.
- make it in 7.3

CONFIG:
We have a new property available in rudder-config.properties :

- rudder.facts.repo.historizeNodeChange=false (default if not present) do not historise inventories in git
- rudder.facts.repo.historizeNodeChange=true do commit inventories in git repos


Related issues 4 (1 open3 closed)

Related to Rudder - Bug #22616: JGitInternalError on HistorizeNodeCountServiceReleasedVincent MEMBRÉActions
Related to Rudder - Bug #20355: rudder-webap: Could not lock HEAD. RefUpdate return code was: LOCK_FAILUREResolvedActions
Related to Rudder - Bug #22246: Webapp stopped to watch for inventoriesNewActions
Related to Rudder - Bug #23424: Make writing node state to fact repos optionnalReleasedNicolas CHARLESActions
Actions #1

Updated by François ARMAND over 1 year ago

  • Related to Bug #22616: JGitInternalError on HistorizeNodeCountService added
Actions #2

Updated by François ARMAND over 1 year ago

  • Related to Bug #20355: rudder-webap: Could not lock HEAD. RefUpdate return code was: LOCK_FAILURE added
Actions #3

Updated by François ARMAND over 1 year ago

  • Related to Bug #22246: Webapp stopped to watch for inventories added
Actions #4

Updated by François ARMAND over 1 year ago

  • Description updated (diff)
Actions #5

Updated by François ARMAND over 1 year ago

  • Status changed from New to In progress
  • Assignee set to François ARMAND
Actions #6

Updated by François ARMAND over 1 year ago

  • Status changed from In progress to Pending technical review
  • Assignee changed from François ARMAND to Vincent MEMBRÉ
  • Pull Request set to https://github.com/Normation/rudder/pull/4883
Actions #7

Updated by François ARMAND over 1 year ago

  • Target version changed from 7.3.4 to 7.2.9

Needed for a customer in 7.2

Actions #8

Updated by Anonymous over 1 year ago

  • Status changed from Pending technical review to Pending release
Actions #9

Updated by François ARMAND over 1 year ago

  • Description updated (diff)
Actions #10

Updated by François ARMAND over 1 year ago

  • Description updated (diff)
Actions #11

Updated by Nicolas CHARLES over 1 year ago

The property is

rudder.facts.repo.historizeNodeChange=false

in rudder-web.properties

Actions #12

Updated by Nicolas CHARLES over 1 year ago

  • Fix check changed from To do to Checked
Actions #13

Updated by Vincent MEMBRÉ over 1 year ago

  • Status changed from Pending release to Released

This bug has been fixed in Rudder 7.2.9 and 7.3.4 which were released today.

Actions #14

Updated by François ARMAND about 1 year ago

  • Description updated (diff)
Actions #15

Updated by François ARMAND about 1 year ago

  • Related to Bug #23424: Make writing node state to fact repos optionnal added
Actions

Also available in: Atom PDF