#59 Moin wiki optimizations
Closed: Fixed None Opened 16 years ago by rayvd.

The wiki is slow.

Page saves in particular are being bottlenecked by the method Moin uses to notify users. The fix for this should be fairly trivial and will reap many benefits.


I have begun looking into this. Notes can be found here:

Things that have already been done:

  • Patched Moin 1.5.8 to support cProfile (accepted in upstream)
  • Profiled page save and identified bottlenecks
  • Discussed possible solutions with #moin-dev team

The current solution would be to implement a cache of subscription regexp's. This would speed up the identification of subscribed users dramatically.

Site note: It seems that the amount of effort to migrate everything to a new wiki (likely with its own set of problems) might be better spent contributing some code to Moin. I believe they also have a faster text-search in their upstream version.

In addition, I have an [http://fedoraproject.org/wiki/Infrastructure/RFR/MoinProfile RFR] in requesting a Xen instance with a copy of the current wiki data for testing.

Could potentially share this with another RFR requester who also request a Xen instance for Moin.

Full text searches are slow too.

Just double checking, I'm going to go ahead and assign this to paulobanon (since you're the requestor) He'll hook you up with what you need.

Perfect... FYI, there are some changes in the new storage backend branch of Moin that may eventually help this. However they are tied into a lot of stuff that isn't (easily) backwards portable. May be helpful for some concepts.

rayvd, just to be sure, you will need python2.5 correct ?

That would be preferred (for cProfile support).

Out of curiosity, what version of Python is running on the box hosting the live wiki currently?

We're running the wiki on stock RHEL5 boxes so python2.4. It would be ideal if you could do development with 2.4 so that we can actually use the changes :)

I can always code any fixes using 2.4-specific features in the 2.5 environment.

That said, 2.4 + RHEL5/CentOS5 likely would be fine. I can use the lsprof profiler (the 3rd party module that became cProfile) with a little tweaking.

You might check with vpv to see if he has any concerns/needs.

Python 2.4 is ok for me, I need to be able to run my own Mercurial branch of 1.7.

I think one thing should be decided: will we run our Moins as standalone, which would require opening two extra ports, or under Apache with cgi/fcgi?

I plan to run mine standalone (for profiling). Any port number is fine.

Will we have root access or sudo access to make changes to the Apache configuration should we want to test under that environment later?

We could always open a request for such modifications as well if you guys would prefer someone else handled it.

mmcgraph deploy everything in publictest1:
http://publictest1.fedora.redhat.com/rayvd/ - Moin-1.5.8
http://publictest1.fedora.redhat.com/vpv/ - Moin-1.7-vpv

please reopen the ticket in case you guys see anything incorrect.

Thanks,
Paulo

I would need my wiki reinstalled, my home directory at publictest1 was emptied. I would also need python-4Suite-XML installed, if possible.

python-4Suite-XML was installed, and im working now on the wiki configs

wiki configs done, i did a symbolic link from the MoinMoin version we are using to the one vpv has cloned from hg (for easier updates)

Looks like I may need mine reinstalled as well. Is this something I can do myself (just to put the instance in my home directory)?

The only part I don't have access to is the wiki.fedoraproject.org data and users.

Resolving this since we haven't heard back from rayvd for quite some time now.
Please reopen it in case its still needed.

Paulo

Login to comment on this ticket.

Metadata