I'm using perl5.6.1 and am trying to debug a program that creates a background process via a system call. The following is the affected code.
if ( $pid eq "" ) # if null, MEVS not running - issue comm
+and to start MEVS
{
@command = ("/mevs/$version/bin/mevs", "/mevs/$version/data/con
+fig_data/mevs2.cfg", "online");
system(@command, "&"); # restart MEVS
$pid = get_pid($version); # Get the current $version mevs pid
chomp $pid; # chomp if not null
print STATUSLOG "\n\n$ctime [$pid] -- MEVS Status Log -- The M
+EVS Online process has been restarted\n\n";
The problem is that the debugger goes into a wait state for a response as the following shows:
DB<1> b 151
DB<2> c
MEVS 2.0, Medicaid Eligibility Verification Server, (c)2003.
Done.
12/07/04 @ 11:13:41 : MEVS started in Online mode, on port 6500, with
+20 listening slots.
I no longer get any DB<> prompts. It seems it just hangs. I know I created a background process because I can kill the perl process and the MEVS system is still running.