is mod_python borked?

grahamd at dscpl.com.au grahamd at dscpl.com.au
Thu Nov 2 18:26:19 EST 2006


walterbyrd wrote:
> I am considering python, instead of php, for web-application
> development. I often see mod_python.criticisized as being borked,
> broken, or just plain sucking.
>
> Any truth to any of that?

I replied to you over on the mod_python mailing list when you reposted
the question there, but I'll copy to here my response for the benefit
of others.

In answer to your question of whether mod_python is borked, the answer
is yes and no.

One sees various people complain about mod_python. In some cases their
claims are valid, but in other cases they are wrong and haven't
bothered to work out how it works. Even when their claims are valid,
they often don't understand the problem properly. To use mod_python
properly also means in a lot of cases understanding how Apache works,
which many are too lazy to do. For example, the difference between
SetHandler and AddHandler and what happens when MultiViews is enabled.

One of the biggest problems is that a lot of ISPs still use Apache 1.3
and so only mod_python 2.7.X is available on those platforms. This
version is quite old now and doesn't behave exactly the same as more
recent versions, yet people read the most recent documentation and
complain it doesn't work as they expect.

Even where people are using Apache 2.0 and thus can use newer versions
of mod_python, they sometimes use RedHat enterprise versions of Linux
which are stuck in a time warp with only 3.1.X versions of mod_python
available. Some of the other Linux distributions haven't been much
better until recently and with people refusing to compile from source
code and demanding RPMs, DEBs or other prepackaged releases are only
bringing it on themselves.

Version 3.2.X has been an improvement over older versions.
Significantly it fixed multithreading issues on Windows and with worker
MPM on UNIX. For publisher at least, it addressed some of the module
importer issues, but not all. It has also addressed some major memory
leaks.

So in summary, if you use the most recent version you are obviously
going to have the least problems. Many still use older versions though
and can't or will not upgrade. Even the current version has known
issues and you can get a feel for what is known by going through issues
at:

  http://issues.apache.org/jira/browse/MODPYTHON

In particular the number of separate issues which will be addressed in
3.3 is getting up towards 100. These aren't all bug fixes, with many
being new features and improvements. The most important change will be
the replacement of the module importer. For a lengthy description of
the problems with the module importer see:


http://www.dscpl.com.au/wiki/ModPython/Articles/ModuleImportingIsBroken

So, use an older version of mod_python and the answer to the question
of whether it is borked is mostly yes. Use the current version and
except for module importer issues, the answer is mostly no. With
version 3.3, the answer should hopefully be a strong no.

Graham




More information about the Python-list mailing list