perleager has asked for the wisdom of the Perl Monks concerning the following question:

Hello,

I have two boxes, a test box and a live box. Both running win2k, the test box is using perl, and the live box is also using perl.

Recently I encountered a problem on the live box, even though the scripts are identicle on the test box and live box. The test box runs the script fine. (Previously, the script was working FINE for both boxes for a few months) On the livebox, now when trying to run the script it timesout and totally slows down the live box.

On my event log, it says Event ID:16 source : w3svc. etc.

"when tryin to run "...pl" with paremeters...connection lost with http server due to timeout etc"..(something like that) Now when I researched this problem, it seemed it wasn't to familiar, but a lot of people stumpping on the error code.

On one message board it says to reinstall perl on your machine, so I did on the live box = nothing doing. Then says to try installing ActiveState perl may fix your problem.

So instead of perl, I installed ActiveStaet Perl, but now onto the module question - would I need to reinstall DBI module and DB_file module (my scripts are using those modules) in order it to work for active state perl? Also are there different versions of the modules for active state perl/perl?

In the ActiveState PPM, i tried searching for "DB_File" and got no results?

One other question:

Using tie, do you need to call the DB_File module?
use DB_File; tie %add, "DB_File", "C:/login" or die "Can't open FILENAME: $!\n"; + # open database tie hash to db $add{"$username"} = "$timerss\|\|\|$session"; untie %add;
Thanks, Anthony

Replies are listed 'Best First'.
Re: ActiveState Perl - Modules
by bart (Canon) on Jan 06, 2004 at 22:34 UTC
    So instead of perl, I installed ActiveStaet Perl, but now onto the module question - would I need to reinstall DBI module and DB_file module (my scripts are using those modules) in order it to work for active state perl?
    Yes. You need to re-install XS modules (= those modules with a DLL component — or the equivalent on other platforms than Windows) when using a different runtime of perl, even when it's a different version of the same origin: upgrade ActivePerl from 5.6.x to 5.8.x, and you'll have to reinstall all these modules, as these perls are not binary compatible.

    The internals of the DLL files depend on the kind of compiler perl was built with — and these modules should be built with the same compiler — so when moving from, say, Cygwin Perl to ActivePerl, you need different copies for these modules. Even for the same version of Perl.

Re: ActiveState Perl - Modules
by Theo (Priest) on Jan 06, 2004 at 22:13 UTC
    Are you dead sure that nothing changed on your live box between when it worked and when it didn't? It may not have been something you did intentionally - your live box may have picked up a virus or worm.

    -Theo-
    (so many nodes and so little time ... )

      That is a possibility.

      I checked the settings and config on the test box and its pretty much the same as on the live box.

      The thing is that not all perl scripts are not working.

      The login.pl works fine , but when trying to log in (calling the auth.pl) then it stalls and connection timesout.

      The login.pl doesn't use any modules, but the auth.pl does call the DB_FIle and DBI modules.

      Anthony
Re: ActiveState Perl - Modules
by jonadab (Parson) on Jan 07, 2004 at 01:15 UTC

    It is very hard to be sure, but to me this does not sound like a problem with Perl or with your scripts. It could be, but I just get the feeling from the nature of your error messages that maybe it's not.

    connection lost with http server due to timeout

    I'd be looking into what http server the script is trying to connect to, and telnet serveraddress 80 and see if maybe the problem really is that for some reason the live box can't connect to that server.


    $;=sub{$/};@;=map{my($a,$b)=($_,$;);$;=sub{$a.$b->()}} split//,".rekcah lreP rehtona tsuJ";$\=$ ;->();print$/
Re: ActiveState Perl - Modules
by PodMaster (Abbot) on Jan 07, 2004 at 02:20 UTC
    PPM::Repositories

    MJD says "you can't just make shit up and expect the computer to know what you mean, retardo!"
    I run a Win32 PPM repository for perl 5.6.x and 5.8.x -- I take requests (README).
    ** The third rule of perl club is a statement of fact: pod is sexy.