On Thu, 16 May 2002, James Luberda wrote: > I have installed Randy Kobes' 5-10-2002 Apache-2/modperl-2 Win32 > binaries on a Win2k Professional P3 uniprocessor development machine. I > have left all of the startup.pl script as is. Everything works > great--however, with some scripts I seem to still suffer from 1.3-style > locks on the perl interpeter that prevent some other scripts from being > served until a given dynamic request completes. I've poked around a bit > and found that simple scripts (ones not using modules) will still be > executed while another long-running process is executing (thus > multithreading properly)--so I'm figuring it's probably a module issue > (or I'm simply confused). The two modules I'm running predominantly are > DBI 1.14 (with DBD::DB2 .74) and CGI 2.74, and I have verified that two > scripts running simultaneously with these two modules will result in one > blocking until the other completes. > > Any/all ideas most welcome--and my sincerest thanks to Randy for his 1.3 > and 2.0 binaries and other incredibly helpful docs/builds/info/etc.
Thanks :) ... Is this a registry script you're finding the blocking with, or within your own custom handler? I just tried the following script (Win2000, ActivePerl 631): =============================================================== use strict; use DBI; use CGI qw(:all); print header, start_html, h3('TEST'), '<UL>'; my $dbh = DBI->connect('DBI:mysql:what', 'user', 'passwd', {RaiseError => 1, PrintError => 1}); my $query = "SELECT x FROM y WHERE z LIKE 'ABC%'"; my $sth = $dbh->prepare($query); $sth->execute; while (my $name = $sth->fetchrow_array) { print "<LI>$name</LI>\n"; } $sth->finish; sleep(10); print "</UL>", end_html; =============================================================== under ModPerl::Registry, with the following directives: =============================================================== <Location /perl> SetHandler perl-script PerlResponseHandler ModPerl::Registry Options +ExecCGI PerlOptions +GlobalRequest PerlOptions +ParseHeaders </Location> =============================================================== and didn't see any blocking ... Does an equivalent of the above work for you? If not, you might try the most recent Apache2 stuff (May 13) - Doug made a whole bunch of enhancements to the Win32 side of mod_perl-2 recently, and perhaps one of those is related to this. Are you using Apache::DBI? If so, try disabling it and seeing if that helps. best regards, randy