Return-Path: Delivered-To: apmail-apr-dev-archive@www.apache.org Received: (qmail 86321 invoked from network); 3 Jul 2004 17:44:13 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 3 Jul 2004 17:44:13 -0000 Received: (qmail 20783 invoked by uid 500); 3 Jul 2004 17:43:59 -0000 Delivered-To: apmail-apr-dev-archive@apr.apache.org Received: (qmail 20570 invoked by uid 500); 3 Jul 2004 17:43:54 -0000 Mailing-List: contact dev-help@apr.apache.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Delivered-To: mailing list dev@apr.apache.org Received: (qmail 20524 invoked by uid 99); 3 Jul 2004 17:43:53 -0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Date: Sat, 03 Jul 2004 10:43:30 -0700 From: Justin Erenkrantz To: Paul Querna , Craig Rodrigues cc: dev@apr.apache.org Subject: Re: FreeBSD APR patch for threads Message-ID: In-Reply-To: <1088850255.6502.59.camel@localhost> References: <20040702194354.GA60584@crodrigues.org> <1088850255.6502.59.camel@localhost> X-Mailer: Mulberry/3.1.5 (Mac OS X) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline X-Spam-Status: No, score=-0.1 required=5.0 tests=ALL_TRUSTED autolearn=failed version=3.0.0-pre1-r21475 X-Spam-Checker-Version: SpamAssassin 3.0.0-pre1-r21475 (2004-06-19) on scotch.ics.uci.edu X-Virus-Scanned: clamd / ClamAV version 0.70, clamav-milter version 0.70j X-Virus-Checked: Checked X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N --On Saturday, July 3, 2004 3:24 AM -0700 Paul Querna wrote: > I do not believe there is any reason to disable thread support in APR > itself. Even on 4.x where the native threading is horrible, and the > Worker MPM is broken. Yes, there is. Lots of weird and subtle things break when threading is enabled on FreeBSD. Besides the well-documented worker MPM problem, Subversion fails to display certain important prompts when threading is enabled - which make Subversion inoperable with threads enabled. (Disabling threads on FreeBSD makes the prompts appear.) We've hit this with minotaur.apache.org which is FreeBSD 4.10 - it made it impossible for us to commit on our own SVN server! Since libxml2 at one point used threads which was used by neon which is used by Subversion, Subversion implicitly enabled threads and circumvented APR's disabling of threads. (FWIW, libxml2 has since been configured to not use threads in FreeBSD ports.) So, this just isn't httpd or a flaw in the worker MPM model - the bugs in the threading library have been seen even without programs explicitly using threads. The best we can tell for the Subversion bug is that the scheduler gets confused and eats an important fd that should be displaying a prompt. If it works for you, good - but *I* absolutely don't want to track down bugs in the FreeBSD threading code - I've seen enough not to trust that code at *all*. FreeBSD 4.x's crappy gdb doesn't help track down problems either - at least 5.x sort of supports current gdb's - but that work is continuing in -CURRENT. Besides not supporting threads properly, gdb's support for FreeBSD 4.x shared libraries is utter junk. -- justin