Project

General

Profile

Actions

Bug #20758

open

Improve group node computation

Added by Nicolas CHARLES 6 months ago. Updated 9 days ago.

Status:
Pending release
Priority:
N/A
Category:
Performance and scalability
Target version:
Severity:
UX impact:
User visibility:
Effort required:
Priority:
0
Regression:

Description

As a follow up of #20716, we could improve the code lisibility by:
  • not having the `internalQueryProcessor` return a NodeInfo, but only NodeId. The overall cost of managing NodeInfo is tremendous in creating Sets
  • so rather than having a `nodeInfoFiltered`, we could have `nodeIdFiltered`
    • This is only possible in 7.0 and + because in branch 6.2 it still need the ServerRole postfilter
  • in PostFilterNodeFromInfoService we can have a faster "toSet" for the OR composition by mapping to nodeId only
  • and `foundNodeInfos` could be a Seq rather than a Set (an make the toSet on the foundNodeInfos.map(_.nodeId) )
  • and so the results in internalQueryProcessor can also be a Seq

The drawback is only for the SearchNodeComponent: it will have to explore back the cache with the list of nodeId to get the result

The overall cost a doing a toSet on collection of NodeInfo is very expensive


Subtasks 1 (1 open0 closed)

Datasources - Bug #21514: Correct tests in datasourcesPending releaseAlexis MoussetActions

Related issues 1 (0 open1 closed)

Related to Rudder - Bug #20716: Improve dynamic group computation speed and fix inverted searchedReleasedFrançois ARMANDActions
Actions #1

Updated by Nicolas CHARLES 6 months ago

  • Related to Bug #20716: Improve dynamic group computation speed and fix inverted searched added
Actions #2

Updated by Nicolas CHARLES 6 months ago

  • Status changed from New to In progress
  • Assignee set to Nicolas CHARLES
  • Pull Request set to https://github.com/Normation/rudder/pull/4172
Actions #3

Updated by Vincent MEMBRÉ 6 months ago

  • Target version changed from 7.0.1 to 7.0.2
Actions #4

Updated by Vincent MEMBRÉ 4 months ago

  • Target version changed from 7.0.2 to 7.0.3
Actions #5

Updated by Vincent MEMBRÉ 3 months ago

  • Target version changed from 7.0.3 to 7.0.4
Actions #6

Updated by Vincent MEMBRÉ about 2 months ago

  • Target version changed from 7.0.4 to 7.0.5
Actions #7

Updated by Vincent MEMBRÉ 23 days ago

  • Target version changed from 7.0.5 to 7.0.6
Actions #8

Updated by Nicolas CHARLES 9 days ago

  • Status changed from In progress to Pending release
Actions #9

Updated by François ARMAND 9 days ago

  • Subtask #21513 added
Actions #10

Updated by François ARMAND 9 days ago

  • Subtask #21514 added
Actions

Also available in: Atom PDF