Bug 915330

Summary: Repository creation degrades greatly compared to v1
Product: [Retired] Pulp Reporter: Justin Sherrill <jsherril>
Component: rpm-supportAssignee: Barnaby Court <bcourt>
Status: CLOSED CURRENTRELEASE QA Contact: Preethi Thomas <pthomas>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 2.0.6CC: bcourt, jason.dobies, skarmark
Target Milestone: ---Keywords: Triaged
Target Release: 2.3.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-12-09 14:31:13 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 854726    
Attachments:
Description Flags
script used to generate 1600 repos and record timings
none
resultts showing slowing of creation
none
Repo create result after the fix none

Description Justin Sherrill 2013-02-25 14:29:24 UTC
Description of problem:

Compared to pulpv1, repository creation takes much longer and degrades much worse as more repositories are created.  For example, on my box the first repo to be created takes .60 seconds, while the 1600th repo takes ~6 seconds.  

Within pulpv1, we could create 1600 repositories within about 30 minutes.  In pulpv2, this seems to take more like 90 minutes.  Within katello our manifest import creates repositories for every available content, so 1600 repos is not abnormal.  

We are changing this very soon, so its not of high priority.  

Attached is a script i used to reproduce the issue, as well the output of all the timings, showing creation taking longer and longer.

Comment 1 Justin Sherrill 2013-02-25 14:33:34 UTC
Created attachment 702366 [details]
script used to generate 1600 repos and record timings

Comment 2 Justin Sherrill 2013-02-25 14:34:19 UTC
Created attachment 702367 [details]
resultts showing slowing of creation

Comment 3 Jay Dobies 2013-02-25 14:41:30 UTC
Does the performance get back to normal afterwords? My gut reaction is that it's the tasking subsystem having more and more data to resolve against. What I want to see is if the tasks clear themselves out once they've completed and things go back to normal.

Comment 4 Justin Sherrill 2013-02-25 14:45:15 UTC
Nope, creating repos 1601-1605 still took around 6 seconds a piece, after waiting ~8 hours after the first 1600 were created.

Comment 5 Jay Dobies 2013-02-25 14:49:46 UTC
Ok cool, thanks for checking.

Comment 6 Justin Sherrill 2013-02-25 19:59:17 UTC
Also to note, I re-ran the tests on a clean pulp server without the feed certs and the problem still occurred, although it was slightly better.  After making 1600 repos, i waited ~90 minutes and created 5 more, each one took around 5.5 seconds.

Comment 7 Jason Connor 2013-05-14 21:03:00 UTC
We've done some investigation into this. The creation and updating of repos gets slower and slower the more repos that exist because they invoke configuration validation, which inspects the configuration of every other repo of the same type (i.e. same importer) for conflicts. In the reported use case, this is every repo, on every create and every update.

Comment 9 Jeff Ortel 2013-09-12 22:35:34 UTC
build: 2.3.0-0.10.alpha

Comment 10 Preethi Thomas 2013-10-07 15:49:26 UTC
Created attachment 808927 [details]
Repo create result after the fix

Comment 11 Preethi Thomas 2013-10-07 15:53:18 UTC
verified
[root@hp-dl360g7-01 ~]# rpm -qa pulp-server
pulp-server-2.3.0-0.17.beta.el6.noarch
[root@hp-dl360g7-01 ~]#

Comment 12 Preethi Thomas 2013-12-09 14:31:13 UTC
Pulp 2.3 released.