Project

General

Profile

Actions

Bug #5452

closed

Performance issue for node list

Added by Lionel Le Folgoc about 10 years ago. Updated over 9 years ago.

Status:
Released
Priority:
1 (highest)
Category:
Performance and scalability
Target version:
Severity:
UX impact:
User visibility:
Effort required:
Priority:
Name check:
Fix check:
Regression:

Description

When a user try to display the list of nodes ("Node Management" > "List nodes"), the page takes a lot of time (tens of seconds) to display when there is a lot of nodes (1000 for example).

It may be due to the fact that the full list of nodes is fetched instead of only the visible page.

There is the same performance problem for "Node Management" > "Accept new nodes": the whole history is fetched, which slows down the loading (see #6078)


Related issues 3 (0 open3 closed)

Related to Rudder - Bug #6059: Graphs in home page take ages to displayReleasedNicolas CHARLES2014-12-31Actions
Related to Rudder - Architecture #6087: Architecture to handle thousands of nodesRejectedFrançois ARMAND2015-01-06Actions
Related to Rudder - Bug #6078: Performance issue for Accept new nodes > history of acceptationReleasedVincent MEMBRÉ2015-01-06Actions
Actions #1

Updated by Matthieu CERDA about 10 years ago

  • Project changed from 24 to Rudder
  • Category set to Performance and scalability
  • Status changed from New to 8
  • Assignee set to François ARMAND
  • Priority changed from N/A to 1 (highest)
  • Target version set to 2.11.3

Giving to fanf for evaluation :)

Actions #2

Updated by Matthieu CERDA about 10 years ago

  • Target version changed from 2.11.3 to 2.11.4
Actions #3

Updated by Vincent MEMBRÉ about 10 years ago

  • Target version changed from 2.11.4 to 2.11.5
Actions #4

Updated by Vincent MEMBRÉ almost 10 years ago

  • Target version changed from 2.11.5 to 2.11.6
Actions #5

Updated by François ARMAND almost 10 years ago

For information, with #6059 the "list of nodes" page takes less than 1.5s to display with 1000 nodes, on a vm with 2Go of ram for the whole Rudder installation.

Actions #6

Updated by François ARMAND almost 10 years ago

  • Target version changed from 2.11.6 to 3.0.0

Targetting it in 3.0 because it implies a lot of changement in code, some architecture related - too much for a bug.

Actions #7

Updated by François ARMAND almost 10 years ago

  • Subject changed from Performance issue for node list (all nodes loaded) to Performance issue for node list
  • Description updated (diff)

Rewrote description and split the "accepected node" part in an other ticket.

Actions #8

Updated by François ARMAND almost 10 years ago

  • Description updated (diff)

On that one, we really want to have all the node on the client side because without that, the "filter" and "sorting" features of the grid don't work as expected by the user (they only filter/sort the visible part).

On the other hand, displaying 1000 lines in a table should be very quick (it's a couple of 100ko, without compression which should be quite good on these data). So the backend should be able to just send these data in less than 2s (from user point of view).

Actions #9

Updated by François ARMAND almost 10 years ago

To be more precise: this performance concern will need several steps. The first one is to have good performance with the current client-side components (i.e, even with a lot of node, being able to display the page is a couple of second).
A second step will implement a change in the used components so that we can load only displayed items and still have filter/sorting working as expected (see #6081)

Actions #10

Updated by François ARMAND almost 10 years ago

  • Status changed from 8 to Pending technical review
  • Pull Request set to https://github.com/Normation/rudder/pull/768

With the proposed patch, the time to display the page "list nodes" with 1900 nodes is ~80ms

Actions #11

Updated by François ARMAND almost 10 years ago

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

Shall we let Vincent look at some nice LDAP query optimization (and he made some clever remark on the last cache-related implementation I did)

Actions #12

Updated by François ARMAND almost 10 years ago

  • Status changed from Pending technical review to Pending release
  • % Done changed from 0 to 100
Actions #14

Updated by Vincent MEMBRÉ over 9 years ago

  • Status changed from Pending release to Released

This bug has been fixed in Rudder 3.0.0, which was released on 2015/02/16

Actions

Also available in: Atom PDF