Bug 803722

Summary: Scalability Testing: With 500+ users in conductor database, an admin user cannot change Global Role Grants
Product: [Retired] CloudForms Cloud Engine Reporter: Ronelle Landy <rlandy>
Component: aeolus-conductorAssignee: Scott Seago <sseago>
Status: CLOSED CURRENTRELEASE QA Contact: wes hayutin <whayutin>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 1.0.0CC: akarol, brad, dajohnso, deltacloud-maint, hbrock, morazi, ssachdev, sseago
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-12-13 19:48:44 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
500 Internal Server Error
none
last 80 lines from rails.log none

Description Ronelle Landy 2012-03-15 14:08:19 UTC
Description of problem:

With 500+ users in conductor database, when an admin user selects a different option from one of the drop-down boxes to change a user 'Global Role Grant', conductor returns a '500 Internal Server Error'. 

/var/log/aeolus-conductor/rails.log shows:

Started POST "/conductor/permissions" for 10.11.9.186 at Thu Mar 15 09:31:44 -0400 2012

RangeError (exceeded available parameter key space):


Steps to Reproduce:
1. add 500 + users to a conductor database
2. log in to conductor as ad admin user
3. Click on Users -> Global Role Grants
4. Notice that the page takes over a minute to open
5. Click on any one of the drop-down boxes to change a user role
6. Conductor disappears and throws:

500 Internal Server Error
If you are the administrator of this website, then please read this web application's log file and/or the web server's log file to find out what went wrong.

 - Screenshot of error attached
 - tail of rails.log attached
  
rpms tested:

rpm -qa |grep aeolus
rubygem-aeolus-cli-0.3.0-14.el6.noarch
aeolus-configure-2.5.0-18.el6.noarch
aeolus-all-0.8.0-41.el6.noarch
rubygem-aeolus-image-0.3.0-12.el6.noarch
aeolus-conductor-0.8.0-41.el6.noarch
aeolus-conductor-daemons-0.8.0-41.el6.noarch
aeolus-conductor-doc-0.8.0-41.el6.noarch

Comment 1 Ronelle Landy 2012-03-15 14:09:31 UTC
Created attachment 570302 [details]
500 Internal Server Error

Comment 2 Ronelle Landy 2012-03-15 14:11:32 UTC
Created attachment 570304 [details]
last 80 lines from rails.log

Comment 3 Scott Seago 2012-03-16 16:47:37 UTC
Started POST "/conductor/permissions" for 10.11.9.186 at Thu Mar 15 09:31:44 -0400 2012

RangeError (exceeded available parameter key space):

This looks like it will be solved by grid/list pagination (development in progress). With 500 users, the 'add permission grant' page will have 500 rows, with 500 elements in the form.

Comment 4 Hugh Brock 2012-03-19 17:29:38 UTC
Pagination. 1.0.z.

Comment 7 Mike Orazi 2012-09-11 23:40:00 UTC
Note:  there is a patch for f17 ONLY w/r/t pagination.  This can't be tested on f17, but should be testable on rhel or f16.  f17 will require a patch.

Can we get confirmation that the pagination on rhel6 alleviates this issue?

Comment 8 Brad P. Crochet 2012-11-01 17:37:59 UTC
Verified with 100+ users. Pagination works correctly.

aeolus-all-0.13.22-1.el6cf.noarch