Open Bug 1118506 Opened 8 years ago Updated 4 years ago

Use a single WSGI script for hg.mozilla.org/users

Categories

(Developer Services :: Mercurial: hg.mozilla.org, defect)

defect
Not set
normal

Tracking

(Not tracked)

People

(Reporter: gps, Assigned: gps)

References

Details

Right now, we have a wsgi script serving hgwebdir_mod for each and every user in hg.mozilla.org/users. And https://hg.mozilla.org/users/ is serving an Apache directory listing.

I assume this was done for performance reasons. I imagine hgwebdir_mod by itself doesn't scale well to hundreds of directories.

We should write a custom WSGI script that does low-level os.listdir foo to print a directory listing (like Apache) and have it dispatch to hgweb_mod when accessing user repos. Once deployed, a lot of pash code doing synchronization of WSGI files with user repo changes and bugs associated with it will go away.
QA Contact: hwine → klibby
This came up in bug 1509943 as part of refactoring the hgwsgi/ files to include a single bootstrap.py file.

The user repo .wsgi files lack the changes made in that series, which will prevent them from working with wire protocol version 2. As currently implemented, wireprotov2 requests will time out to user repos due to timing out connecting to S3.

So we should fix this before we go live with partial clones and wireprotov2.
Blocks: 1505555
Depends on: 1509943
Assignee: nobody → gps
Status: NEW → ASSIGNED
I'm going to pursue a simpler option.
No longer blocks: 1505555
Status: ASSIGNED → NEW
You need to log in before you can comment on or make changes to this bug.