Project

General

Profile

Bug #10773

Rounding error in compliance bar can hide error with very small percent

Added by François ARMAND about 2 years ago. Updated 4 months ago.

Status:
Released
Priority:
N/A
Category:
Web - UI & UX
Target version:
Severity:
Critical - prevents main use of Rudder | no workaround | data loss | security
User visibility:
Operational - other Techniques | Rudder settings | Plugins
Effort required:
Medium
Priority:
76
Tags:

Description

As reported in #10761, depending of the numbers, we may display percents that don't sum-up to 100% in the compliance bar.

A part of the ticket is to establish a definitive algo about how the computing of such rounding is done (up or down? Always 100 (yes)? Favors error or success?)


Subtasks

Bug #14272: Table "sort by compliance" is brokenReleasedVincent MEMBRÉActions

Related issues

Related to Rudder - Bug #12643: Compliance bar appears partially white in some graphesReleasedActions

Associated revisions

Revision 50e68a2d (diff)
Added by Vincent MEMBRÉ 5 months ago

Fixes #10773: Rounding error in compliance bar

History

#1

Updated by Vincent MEMBRÉ about 2 years ago

  • Target version changed from 4.1.3 to 4.1.4
#2

Updated by Vincent MEMBRÉ about 2 years ago

  • Target version changed from 4.1.4 to 4.1.5
#3

Updated by Alexis MOUSSET about 2 years ago

  • Target version changed from 4.1.5 to 4.1.6
#4

Updated by Benoît PECCATTE almost 2 years ago

  • Priority changed from 35 to 50
#5

Updated by Benoît PECCATTE almost 2 years ago

Proposed algo:
  • Sort values from small to big
  • Have a counter for the rounding error (= displayed value - real value)
  • All values <1% are displayed <1% and counted as 1%
  • For each other value, round depending on the counter (above i negative, below if positive)

-> this should be as close to 100% as possible, more or less 1% (except if there are too many <1%
-> some value are not rounded to the closest

Alternative:
  • Idem except:
  • Round to the closest all values interdependently of the counter except the last one
  • Substract the counter from the last value before rounding

-> This can make sure we hit 100%
-> only the biggest value is imprecise

#6

Updated by Benoît PECCATTE almost 2 years ago

  • Category set to Web - UI & UX
#7

Updated by Raphael GAUTHIER almost 2 years ago

  • Effort required set to Medium
  • Priority changed from 50 to 33
#8

Updated by Vincent MEMBRÉ almost 2 years ago

  • Target version changed from 4.1.6 to 4.1.7
#9

Updated by Vincent MEMBRÉ almost 2 years ago

  • Target version changed from 4.1.7 to 4.1.8
  • Priority changed from 33 to 32
#10

Updated by Vincent MEMBRÉ over 1 year ago

  • Target version changed from 4.1.8 to 4.1.9
#11

Updated by Benoît PECCATTE over 1 year ago

  • Priority changed from 32 to 31
#12

Updated by Vincent MEMBRÉ over 1 year ago

  • Target version changed from 4.1.9 to 4.1.10
#13

Updated by Vincent MEMBRÉ over 1 year ago

  • Target version changed from 4.1.10 to 4.1.11
  • Priority changed from 31 to 29
#14

Updated by Vincent MEMBRÉ about 1 year ago

  • Target version changed from 4.1.11 to 4.1.12
#15

Updated by Alexis MOUSSET about 1 year ago

  • Severity changed from Minor - inconvenience | misleading | easy workaround to Critical - prevents main use of Rudder | no workaround | data loss | security
  • Priority changed from 29 to 64

It happens event in nodes list, and even in rules overview in node compliance. We need to go to component level to see errors.

This may hide any configuration issue, and gives a false sense on compliance. Setting to critical.

#16

Updated by Benoît PECCATTE about 1 year ago

my algorithm is still valid

#17

Updated by Vincent MEMBRÉ about 1 year ago

  • Target version changed from 4.1.12 to 4.1.13
#18

Updated by Benoît PECCATTE about 1 year ago

  • Target version changed from 4.1.13 to 411
#19

Updated by Benoît PECCATTE about 1 year ago

  • Target version changed from 411 to 4.1.13
#20

Updated by François ARMAND about 1 year ago

  • Related to Bug #12643: Compliance bar appears partially white in some graphes added
#21

Updated by Vincent MEMBRÉ about 1 year ago

I tested really small status (1 error for 1k reports to 1billion)

1k to 20k => Ok! (a small portion appear containing the error)

20k to 21M => 100% green (no error section)

21M and above => Overflow !

#22

Updated by Vincent MEMBRÉ about 1 year ago

Above 20k reports, this breaks because we have less that 0,005 % and since we round to 2 digits, it's rounded to 0,00%

#23

Updated by Benoît PECCATTE about 1 year ago

  • User visibility changed from Getting started - demo | first install | level 1 Techniques to Operational - other Techniques | Technique editor | Rudder settings
  • Priority changed from 64 to 49
#24

Updated by Vincent MEMBRÉ 12 months ago

  • Target version changed from 4.1.13 to 4.1.14
#25

Updated by Benoît PECCATTE 11 months ago

  • Target version changed from 4.1.14 to 4.1.15
#26

Updated by Vincent MEMBRÉ 8 months ago

  • Target version changed from 4.1.15 to 4.1.16
#27

Updated by Vincent MEMBRÉ 8 months ago

  • Target version changed from 4.1.16 to 4.1.17
#28

Updated by Vincent MEMBRÉ 7 months ago

  • Target version changed from 4.1.17 to 4.1.18
  • Priority changed from 49 to 0
#29

Updated by Vincent MEMBRÉ 6 months ago

  • Target version changed from 4.1.18 to 4.1.19
#30

Updated by Alexis MOUSSET 5 months ago

  • Target version changed from 4.1.19 to 4.1.20
#31

Updated by François ARMAND 5 months ago

  • Tags set to Sponsored
  • User visibility changed from Operational - other Techniques | Technique editor | Rudder settings to Operational - other Techniques | Rudder settings | Plugins
  • Priority changed from 0 to 76
#32

Updated by François ARMAND 5 months ago

This is causing grave problem in the case where one among a big number of reports are in error, and that component is critical.

#33

Updated by François ARMAND 5 months ago

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

Updated by Vincent MEMBRÉ 5 months ago

  • Assignee changed from François ARMAND to Vincent MEMBRÉ
#35

Updated by Vincent MEMBRÉ 5 months ago

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

Updated by Rudder Quality Assistant 5 months ago

  • Assignee changed from François ARMAND to Vincent MEMBRÉ
#37

Updated by Vincent MEMBRÉ 5 months ago

  • Status changed from Pending technical review to Pending release
#38

Updated by François ARMAND 4 months ago

  • Subject changed from Rounding error in compliance bar to Rounding error in compliance bar can hide error with very small percent
#39

Updated by François ARMAND 4 months ago

  • Status changed from Pending release to Released

This bug has been fixed in Rudder 4.1.20, 4.3.10 and 5.0.6 which were released today.

Also available in: Atom PDF