[JIRA] (JENKINS-18377) Improve the performance when listing many jobs (GSoC 2019, coding phase 2)

15 views
Skip to first unread message

o.v.nenashev@gmail.com (JIRA)

unread,
Jun 28, 2019, 3:11:05 AM6/28/19
to jenkinsc...@googlegroups.com
Oleg Nenashev updated an issue
 
Jenkins / Epic JENKINS-18377
Improve the performance when listing many jobs (GSoC 2019, coding phase 2)
Change By: Oleg Nenashev
Summary: Improve the performance when listing many jobs (GSoC 2019, coding phase 2)
Add Comment Add Comment
 
This message was sent by Atlassian Jira (v7.11.2#711002-sha1:fdc329d)

o.v.nenashev@gmail.com (JIRA)

unread,
Jun 28, 2019, 3:11:07 AM6/28/19
to jenkinsc...@googlegroups.com
Oleg Nenashev updated an issue
Change By: Oleg Nenashev
Labels: gsoc-2019 gsoc - 2019- project-idea performance plugin

o.v.nenashev@gmail.com (JIRA)

unread,
Jun 28, 2019, 3:11:08 AM6/28/19
to jenkinsc...@googlegroups.com
Oleg Nenashev started work on Epic JENKINS-18377
 
Change By: Oleg Nenashev
Status: Open In Progress

root@junwuhui.cn (JIRA)

unread,
Jul 3, 2019, 3:28:05 AM7/3/19
to jenkinsc...@googlegroups.com
runze xia commented on Epic JENKINS-18377
 
Re: Improve the performance when listing many jobs (GSoC 2019, coding phase 2)

I thought about our authentication model. First we need to get the acl (traversing all the roles), and in the second step to determine whether the role in the acl has the appropriate permissions.
Can we simplify the acquisition of acl content, we construct the roleMap in the second step, so we can reduce the traversal of some roles.

This idea may require redesigning the ACL object. The way the ACL is cached may also change.

sharmaabhyudaya@gmail.com (JIRA)

unread,
Jul 3, 2019, 3:31:03 AM7/3/19
to jenkinsc...@googlegroups.com

runze xia I have just committed https://github.com/jenkinsci/role-strategy-plugin/pull/89/commits/a02ea97b0bd512da1973f502c6ab3faca69845d8 for the folder based authorization. This changes how global roles work. Is it something like what you're looking for?

root@junwuhui.cn (JIRA)

unread,
Jul 3, 2019, 3:47:02 AM7/3/19
to jenkinsc...@googlegroups.com

Abhyudaya Sharma   Yes, it is very similar to the approach I mentioned. If we operate in havePermission func, can we reduce some memory consumption? And we might be very simple to break the loop?

jglick@cloudbees.com (JIRA)

unread,
Jul 3, 2019, 10:01:03 AM7/3/19
to jenkinsc...@googlegroups.com

When loading the "Overview" to list all jobs, the loading time is over 60 seconds.

Certainly it is good to optimize particular bottlenecks as we find them, but in tandem I would suggest changing the rendering of the dashboard to be progressive so that server-side bottlenecks do not completely prevent display nor block the user from initiating unrelated actions (like clicking on the sidebar). JENKINS-25075 suggests doing this for individual *ListView/column.jelly cells, though you could just as easily render whole rows lazily, ameliorating a bunch of performance problems at once.

Reply all
Reply to author
Forward
0 new messages