What was the resolution for this, if any?
----- Forwarded message from [EMAIL PROTECTED] -----
Delivered-To: [EMAIL PROTECTED]
Mailing-List: contact [EMAIL PROTECTED]; run by ezmlm
Precedence: bulk
list-help: <mailto:[EMAIL PROTECTED]>
list-unsubscribe: <mailto:[EMAIL PROTECTED]>
list-post: <mailto:[EMAIL PROTECTED]>
Delivered-To: mailing list [EMAIL PROTECTED]
Subject: [ID 20000630.001] Problem with waitpid and wait on VMS
To: [EMAIL PROTECTED]
From: [EMAIL PROTECTED]
Delivered-To: [EMAIL PROTECTED]
X-Lotus-Fromdomain: IBMFR
Date: Fri, 30 Jun 2000 15:19:07 +0200
Message-Id: <[EMAIL PROTECTED]>
X-Perlbug: [EMAIL PROTECTED]
X-Errors-To: [EMAIL PROTECTED]
This is a bug report for perl from [EMAIL PROTECTED],
generated with the help of perlbug 1.26 running under perl 5.00503.
-----------------------------------------------------------------
When I try to wait a process started before, perl stop with the following
message :
Fatal VMS error (status=2280) at DISK$USR:[PTPC.PERL.P500503]VMS.C;1, line
779 a
t wait.pl line 16.
%SYSTEM-W-NONEXPR, nonexistent process
In fact, perl is waiting until process stop but do an error because the
process
is not still active.
Same behaviour occurs if we give a wrong process id (except we don't wait).
Example :
$ perl -e "waitpid 99999, 0 ;"
Fatal VMS error (status=2280) at DISK$USR:[PTPC.PERL.P500503]VMS.C;1, line
779 .
%SYSTEM-W-NONEXPR, nonexistent process
wait.pl:
command = "run/detach disk\$usr:[ptpc.testperl]prog.exe|";
open (COMMAND, $command) || die "Pb to start $command\n";
$processDesc = <COMMAND>;
# Find process id returned by run
# run/detach return a string :
# %RUN-S_PROC-ID, identification of created process is
if ( $processDesc =~ /.*is\s([\da-fA-F]+)/)
{
$processDesc = $1;
close COMMAND;
}
$processDesc = hex($processDesc);
print "Wait procesdesc=$processDesc\n";
$endidPid = waitpid($processDesc, 0);
print "End of the perl script\n";
Here you have the C program started by wait.pl:
#include <stdio.h>
int main(int argc, char*argv[])
{
printf ("Hello\n");
sleep(10);
printf("Bye\n");
return(11);
}
--------------------------------------------------------------------
Site configuration information for perl 5.00503:
Configured by unknown at Mon may 15 12:02:29.96 2000.
Summary of my perl5 (5.0 patchlevel 5 subversion 3) configuration:
Platform:
osname=VMS, osvers=V7.2-1, archname=VMS_AXP
uname='VMS alphanze01 V7.2-1 Compaq AlphaServer ES40'
hint=none, useposix=false, d_sigaction=define
usethreads=undef useperlio=undef d_sfio=undef
Compiler:
cc='CC/DECC', optimize='undef', gccversion=undef
cppflags='undef'
ccflags ='/Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList'
stdchar='char', d_stdstdio=define, usevfork=true
intsize=4, longsize=4, ptrsize=4, doublesize=8
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
alignbytes=8, usemymalloc=N, prototype=define
Linker and Libraries:
ld='Link', ldflags ='/NoTrace/NoMap'
libpth=/sys$share /sys$library
libs=
libc=(DECCRTL), so=exe, useshrplib=undef, libperl=undef
Dynamic Linking:
dlsrc=dl_vms.c, dlext=exe, d_dlsymun=undef, ccdlflags=''
cccdlflags='', lddlflags='/Share'
Locally applied patches:
---
@INC for perl 5.00503:
perl_root:[lib.VMS_AXP.5_00503]
perl_root:[lib]
perl_root:[lib.site_perl.VMS_AXP]
perl_root:[lib.site_perl]
.
---
Environment for perl 5.00503:
HOME=sys$sysroot:[sysmgr]
LANG (unset)
LANGUAGE (unset)
LD_LIBRARY_PATH (unset)
LOGDIR (unset)
PATH=sys$common:[tools.perl]
PERLSHR=PERL_ROOT:[000000]PERLSHR.EXE
PERL_BADLANG (unset)
PERL_ROOT=DKA0:[SYS0.SYSCOMMON.TOOLS.PERL.]
SHELL (unset)
----- End forwarded message -----
--
$jhi++; # http://www.iki.fi/jhi/
# There is this special biologist word we use for 'stable'.
# It is 'dead'. -- Jack Cohen