> I don't see what the big deal is here.  It doesn't have to be one or
> the other.  It REALLY is up to PHP and mod_perl to let their users
> know that they aren't thread-safe.  It would also be helpful for
> Apache to let its users know that there are potential problems due to
> non-thread-safe third-party modules.
>
> As someone else posted, put a notice in the Apache distribution area
> that Apache 2.0 now supports threaded models, and before upgrading to
> Apache 2.0 and using one of the threaded models, users should check
> with each third-party module that they use to see if they're
> thread-safe.


If someone is looking for something to do here are some suggestions:
Publish a tutorial on how to review code to see if it is threadsafe and
reentrant (showing example of safe and unsafe implementations, list the 10
most common pitfalls that make a library not threadsafe (use of strtok and
static variables, setting, incrementing/decrementing and testing of
variables, etc.)). Maintain a list of know threadsafe/reentrant and unsafe
libraries. Maintain a list of Apache 2.0 modules with known problems and
hopefully be as specific as possible. If we can point out the problems,
folks will likely step up and fix them.

A remarkable number of software developers are really ignorant about
programming in a threaded environment and I know from first hand experience
with newbie software developers that it is really difficult for some people
to grok that even a one instruction timing window where two threads can
interfere with each other cannot be allowed. Anything we, the httpd
developers, can do to help educate folks (even if it is just pointing them
to good doc on writing threaded applications) is in our best interest.

Bill

Reply via email to