Bug #16548 Updated: exec or system a daemon will catch the port for this session

2002-04-24 Thread stefan . marquardt

 ID:   16548
 Updated by:   [EMAIL PROTECTED]
 Reported By:  [EMAIL PROTECTED]
-Status:   Closed
+Status:   Open
 Bug Type: Session related
 Operating System: RED HAT Linux 7.2
 PHP Version:  4.1.2
 New Comment:

Found new error in latest cvs:
This line
system($SDHAG/ha-server $DB $CADB $CABI 1 $SDHAG 21,$ret); 

has 0 100% as returncode i put an echo before exit 0!
With older php there was now error.


Previous Comments:


[2002-04-23 19:55:08] [EMAIL PROTECTED]

This should be fixed in CVS. Please try the latest cvs snapshot from
http://snaps.php.net/ and make sure the
Revision of ext/session/mod_files.c is 1.74

--Jani




[2002-04-18 16:30:18] [EMAIL PROTECTED]

reopened as possible session related bug.




[2002-04-18 10:30:13] [EMAIL PROTECTED]

Sorry !
PHP/4.2.0RC4 has the same problem with _mprshut and session.auto_start
= 1.

httpd and _mprshut acces /tmp/sess_*



[2002-04-18 09:39:10] [EMAIL PROTECTED]

Please try PHP 4.2.0RC4 from http://www.php.net/~derick/




[2002-04-17 10:01:27] [EMAIL PROTECTED]

Now it's 100% true:
Without session.auto_start = 0 it works also with apache with php
compiled.

So i can't use session variables.
Has anybody interest to solve the problem ?
I know not much from C.

On which side is the error ? PHP or _mproshut (Progress) ?



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/16548

-- 
Edit this bug report at http://bugs.php.net/?id=16548edit=1




Bug #16548 Updated: exec or system a daemon will catch the port for this session

2002-04-23 Thread sniper

 ID:   16548
 Updated by:   [EMAIL PROTECTED]
 Reported By:  [EMAIL PROTECTED]
-Status:   Open
+Status:   Closed
 Bug Type: Session related
 Operating System: RED HAT Linux 7.2
 PHP Version:  4.1.2
 New Comment:

This should be fixed in CVS. Please try the latest cvs snapshot from
http://snaps.php.net/ and make sure the
Revision of ext/session/mod_files.c is 1.74

--Jani



Previous Comments:


[2002-04-18 16:30:18] [EMAIL PROTECTED]

reopened as possible session related bug.




[2002-04-18 10:30:13] [EMAIL PROTECTED]

Sorry !
PHP/4.2.0RC4 has the same problem with _mprshut and session.auto_start
= 1.

httpd and _mprshut acces /tmp/sess_*



[2002-04-18 09:39:10] [EMAIL PROTECTED]

Please try PHP 4.2.0RC4 from http://www.php.net/~derick/




[2002-04-17 10:01:27] [EMAIL PROTECTED]

Now it's 100% true:
Without session.auto_start = 0 it works also with apache with php
compiled.

So i can't use session variables.
Has anybody interest to solve the problem ?
I know not much from C.

On which side is the error ? PHP or _mproshut (Progress) ?



[2002-04-17 07:23:29] [EMAIL PROTECTED]

Without session.auto_start = 0 it works without problem !
(it was 1 but i use it)

[root@linux /tmp]# fuser sess* 
sess_e2b04b5ddbae91f2c52fd86e808565f5: 20658 20661 20664 20667
[root@linux /tmp]# ps -ef | grep 20658
root 20658 1  0 12:15 ?00:00:00
/home/dlc83e/bin/_mprshut /home/
root 20672 12474  0 12:15 pts/100:00:00 grep 20658 


_mprshut access the session file in /tmp !

How can this happen ?



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/16548

-- 
Edit this bug report at http://bugs.php.net/?id=16548edit=1




Bug #16548 Updated: exec or system a daemon will catch the port for this session

2002-04-18 Thread sniper

 ID:   16548
 Updated by:   [EMAIL PROTECTED]
 Reported By:  [EMAIL PROTECTED]
 Status:   Bogus
 Bug Type: Apache related
 Operating System: RED HAT Linux 7.2
 PHP Version:  4.1.2
 New Comment:

Please try PHP 4.2.0RC4 from http://www.php.net/~derick/



Previous Comments:


[2002-04-17 10:01:27] [EMAIL PROTECTED]

Now it's 100% true:
Without session.auto_start = 0 it works also with apache with php
compiled.

So i can't use session variables.
Has anybody interest to solve the problem ?
I know not much from C.

On which side is the error ? PHP or _mproshut (Progress) ?



[2002-04-17 07:23:29] [EMAIL PROTECTED]

Without session.auto_start = 0 it works without problem !
(it was 1 but i use it)

[root@linux /tmp]# fuser sess* 
sess_e2b04b5ddbae91f2c52fd86e808565f5: 20658 20661 20664 20667
[root@linux /tmp]# ps -ef | grep 20658
root 20658 1  0 12:15 ?00:00:00
/home/dlc83e/bin/_mprshut /home/
root 20672 12474  0 12:15 pts/100:00:00 grep 20658 


_mprshut access the session file in /tmp !

How can this happen ?



[2002-04-17 06:04:12] [EMAIL PROTECTED]

New information:

I use now a cgi-bin version from php (before it was compiled into
apache).
If i start the script frist time it runs perfect and ended.
(i see no php process).
After that i can open any html pages without problem.
If i try to open any php page in the same session it hungs.
I can see the php process ans strace shows this:
flock(3, LOCK_EX

Is there a possibilty for debugging php itself ?

I compiled not enable-debug but what can i do with that ?



[2002-04-15 08:48:10] [EMAIL PROTECTED]

system( ( $DLC/bin/_mprshut $CADB/$DB -C watchdog /dev/null 21
/dev/null ));

That should run the command in a sub-shell, and might solve this
strange
problem.

Also, have you tried enabling the sigchild handler?
./configure --help | grep sigchild


Nothing helps.
The developer of _mprshut can reproduce the same effect under IS(NT).



[2002-04-12 07:04:44] [EMAIL PROTECTED]

 As a workaround, don't use exec :-)

system($DLC/bin/_mprshut $CADB/$DB -C watchdog 21
/dev/null);

has the same effect.
:-(



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/16548

-- 
Edit this bug report at http://bugs.php.net/?id=16548edit=1




Bug #16548 Updated: exec or system a daemon will catch the port for this session

2002-04-18 Thread stefan . marquardt

 ID:   16548
 Updated by:   [EMAIL PROTECTED]
 Reported By:  [EMAIL PROTECTED]
 Status:   Bogus
 Bug Type: Apache related
 Operating System: RED HAT Linux 7.2
 PHP Version:  4.1.2
 New Comment:

Sorry !
PHP/4.2.0RC4 has the same problem with _mprshut and session.auto_start
= 1.

httpd and _mprshut acces /tmp/sess_*


Previous Comments:


[2002-04-18 09:39:10] [EMAIL PROTECTED]

Please try PHP 4.2.0RC4 from http://www.php.net/~derick/




[2002-04-17 10:01:27] [EMAIL PROTECTED]

Now it's 100% true:
Without session.auto_start = 0 it works also with apache with php
compiled.

So i can't use session variables.
Has anybody interest to solve the problem ?
I know not much from C.

On which side is the error ? PHP or _mproshut (Progress) ?



[2002-04-17 07:23:29] [EMAIL PROTECTED]

Without session.auto_start = 0 it works without problem !
(it was 1 but i use it)

[root@linux /tmp]# fuser sess* 
sess_e2b04b5ddbae91f2c52fd86e808565f5: 20658 20661 20664 20667
[root@linux /tmp]# ps -ef | grep 20658
root 20658 1  0 12:15 ?00:00:00
/home/dlc83e/bin/_mprshut /home/
root 20672 12474  0 12:15 pts/100:00:00 grep 20658 


_mprshut access the session file in /tmp !

How can this happen ?



[2002-04-17 06:04:12] [EMAIL PROTECTED]

New information:

I use now a cgi-bin version from php (before it was compiled into
apache).
If i start the script frist time it runs perfect and ended.
(i see no php process).
After that i can open any html pages without problem.
If i try to open any php page in the same session it hungs.
I can see the php process ans strace shows this:
flock(3, LOCK_EX

Is there a possibilty for debugging php itself ?

I compiled not enable-debug but what can i do with that ?



[2002-04-15 08:48:10] [EMAIL PROTECTED]

system( ( $DLC/bin/_mprshut $CADB/$DB -C watchdog /dev/null 21
/dev/null ));

That should run the command in a sub-shell, and might solve this
strange
problem.

Also, have you tried enabling the sigchild handler?
./configure --help | grep sigchild


Nothing helps.
The developer of _mprshut can reproduce the same effect under IS(NT).



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/16548

-- 
Edit this bug report at http://bugs.php.net/?id=16548edit=1




Bug #16548 Updated: exec or system a daemon will catch the port for this session

2002-04-18 Thread sniper

 ID:   16548
 Updated by:   [EMAIL PROTECTED]
 Reported By:  [EMAIL PROTECTED]
-Status:   Bogus
+Status:   Open
-Bug Type: Apache related
+Bug Type: Session related
 Operating System: RED HAT Linux 7.2
 PHP Version:  4.1.2
 New Comment:

reopened as possible session related bug.



Previous Comments:


[2002-04-18 10:30:13] [EMAIL PROTECTED]

Sorry !
PHP/4.2.0RC4 has the same problem with _mprshut and session.auto_start
= 1.

httpd and _mprshut acces /tmp/sess_*



[2002-04-18 09:39:10] [EMAIL PROTECTED]

Please try PHP 4.2.0RC4 from http://www.php.net/~derick/




[2002-04-17 10:01:27] [EMAIL PROTECTED]

Now it's 100% true:
Without session.auto_start = 0 it works also with apache with php
compiled.

So i can't use session variables.
Has anybody interest to solve the problem ?
I know not much from C.

On which side is the error ? PHP or _mproshut (Progress) ?



[2002-04-17 07:23:29] [EMAIL PROTECTED]

Without session.auto_start = 0 it works without problem !
(it was 1 but i use it)

[root@linux /tmp]# fuser sess* 
sess_e2b04b5ddbae91f2c52fd86e808565f5: 20658 20661 20664 20667
[root@linux /tmp]# ps -ef | grep 20658
root 20658 1  0 12:15 ?00:00:00
/home/dlc83e/bin/_mprshut /home/
root 20672 12474  0 12:15 pts/100:00:00 grep 20658 


_mprshut access the session file in /tmp !

How can this happen ?



[2002-04-17 06:04:12] [EMAIL PROTECTED]

New information:

I use now a cgi-bin version from php (before it was compiled into
apache).
If i start the script frist time it runs perfect and ended.
(i see no php process).
After that i can open any html pages without problem.
If i try to open any php page in the same session it hungs.
I can see the php process ans strace shows this:
flock(3, LOCK_EX

Is there a possibilty for debugging php itself ?

I compiled not enable-debug but what can i do with that ?



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/16548

-- 
Edit this bug report at http://bugs.php.net/?id=16548edit=1




Bug #16548 Updated: exec or system a daemon will catch the port for this session

2002-04-15 Thread stefan . marquardt

 ID:   16548
 Updated by:   [EMAIL PROTECTED]
 Reported By:  [EMAIL PROTECTED]
 Status:   Bogus
 Bug Type: Apache related
 Operating System: RED HAT Linux 7.2
 PHP Version:  4.1.2
 New Comment:

system( ( $DLC/bin/_mprshut $CADB/$DB -C watchdog /dev/null 21
/dev/null ));

That should run the command in a sub-shell, and might solve this
strange
problem.

Also, have you tried enabling the sigchild handler?
./configure --help | grep sigchild


Nothing helps.
The developer of _mprshut can reproduce the same effect under IS(NT).


Previous Comments:


[2002-04-12 07:04:44] [EMAIL PROTECTED]

 As a workaround, don't use exec :-)

system($DLC/bin/_mprshut $CADB/$DB -C watchdog 21
/dev/null);

has the same effect.
:-(



[2002-04-12 05:26:26] [EMAIL PROTECTED]

Most likely _mprshut is forking but keeping some fd's open, or doing
something else strange.
I can't see how this is PHP's fault (it just uses popen),
so I'm marking this as bogus.
As a workaround, don't use exec :-)



[2002-04-12 02:06:33] [EMAIL PROTECTED]

The same with:
system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 21
/dev/null);

This _mprshut needs no input.
(I mail this problem also to the developer of _mprshut,Progress
Database.)
The rest of the php script finishes but i can't open a new page and
have to close this session.
In the moment i have no further idea to separate this command from the
actual www session.
I tried at, that works but +1 minute is too late. :-(



[2002-04-11 11:55:05] [EMAIL PROTECTED]

Try this:
system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 21
/dev/null);




[2002-04-11 11:46:40] [EMAIL PROTECTED]

Hi,

system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 1/dev/null 21
);

has the same effect!
_mprshut is a daemon that ended in a second.

Please notice: The script doesn't hungs the rest works fine after
system.
I can't open any new page after accessing this script an
_mprshut listen on port 80.
On HP-UX the Apache still works fine with a listening
_mprshut.

Stefan



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/16548

-- 
Edit this bug report at http://bugs.php.net/?id=16548edit=1




Bug #16548 Updated: exec or system a daemon will catch the port for this session

2002-04-12 Thread wez

 ID:   16548
 Updated by:   [EMAIL PROTECTED]
 Reported By:  [EMAIL PROTECTED]
-Status:   Open
+Status:   Bogus
 Bug Type: Apache related
 Operating System: RED HAT Linux 7.2
 PHP Version:  4.1.2
 New Comment:

Most likely _mprshut is forking but keeping some fd's open, or doing
something else strange.
I can't see how this is PHP's fault (it just uses popen),
so I'm marking this as bogus.
As a workaround, don't use exec :-)


Previous Comments:


[2002-04-12 02:06:33] [EMAIL PROTECTED]

The same with:
system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 21
/dev/null);

This _mprshut needs no input.
(I mail this problem also to the developer of _mprshut,Progress
Database.)
The rest of the php script finishes but i can't open a new page and
have to close this session.
In the moment i have no further idea to separate this command from the
actual www session.
I tried at, that works but +1 minute is too late. :-(



[2002-04-11 11:55:05] [EMAIL PROTECTED]

Try this:
system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 21
/dev/null);




[2002-04-11 11:46:40] [EMAIL PROTECTED]

Hi,

system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 1/dev/null 21
);

has the same effect!
_mprshut is a daemon that ended in a second.

Please notice: The script doesn't hungs the rest works fine after
system.
I can't open any new page after accessing this script an
_mprshut listen on port 80.
On HP-UX the Apache still works fine with a listening
_mprshut.

Stefan



[2002-04-11 11:37:33] [EMAIL PROTECTED]

Hmm, on second thoughts, it sounds like your OS is broken.
Does the equivalent script written in perl do the same?



[2002-04-11 11:35:10] [EMAIL PROTECTED]

Please read the docs about system().
System executes the process and waits for it to complete
before returning.
You need to append an  character to your command to cause
it to run in the background.




The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/16548

-- 
Edit this bug report at http://bugs.php.net/?id=16548edit=1




Bug #16548 Updated: exec or system a daemon will catch the port for this session

2002-04-12 Thread stefan . marquardt

 ID:   16548
 Updated by:   [EMAIL PROTECTED]
 Reported By:  [EMAIL PROTECTED]
 Status:   Bogus
 Bug Type: Apache related
 Operating System: RED HAT Linux 7.2
 PHP Version:  4.1.2
 New Comment:

 As a workaround, don't use exec :-)

system($DLC/bin/_mprshut $CADB/$DB -C watchdog 21
/dev/null);

has the same effect.
:-(


Previous Comments:


[2002-04-12 05:26:26] [EMAIL PROTECTED]

Most likely _mprshut is forking but keeping some fd's open, or doing
something else strange.
I can't see how this is PHP's fault (it just uses popen),
so I'm marking this as bogus.
As a workaround, don't use exec :-)



[2002-04-12 02:06:33] [EMAIL PROTECTED]

The same with:
system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 21
/dev/null);

This _mprshut needs no input.
(I mail this problem also to the developer of _mprshut,Progress
Database.)
The rest of the php script finishes but i can't open a new page and
have to close this session.
In the moment i have no further idea to separate this command from the
actual www session.
I tried at, that works but +1 minute is too late. :-(



[2002-04-11 11:55:05] [EMAIL PROTECTED]

Try this:
system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 21
/dev/null);




[2002-04-11 11:46:40] [EMAIL PROTECTED]

Hi,

system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 1/dev/null 21
);

has the same effect!
_mprshut is a daemon that ended in a second.

Please notice: The script doesn't hungs the rest works fine after
system.
I can't open any new page after accessing this script an
_mprshut listen on port 80.
On HP-UX the Apache still works fine with a listening
_mprshut.

Stefan



[2002-04-11 11:37:33] [EMAIL PROTECTED]

Hmm, on second thoughts, it sounds like your OS is broken.
Does the equivalent script written in perl do the same?



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/16548

-- 
Edit this bug report at http://bugs.php.net/?id=16548edit=1




Bug #16548 Updated: exec or system a daemon will catch the port for this session

2002-04-11 Thread wez

 ID:   16548
 Updated by:   [EMAIL PROTECTED]
 Reported By:  [EMAIL PROTECTED]
-Status:   Open
+Status:   Bogus
 Bug Type: Apache related
 Operating System: RED HAT Linux 7.2
 PHP Version:  4.1.2
 New Comment:

Please read the docs about system().
System executes the process and waits for it to complete
before returning.
You need to append an  character to your command to cause
it to run in the background.



Previous Comments:


[2002-04-11 08:27:19] [EMAIL PROTECTED]

This are my simple commands:
system($DLC/bin/proserve $CADB/$DB 21); 
system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 21);


The first command works fine but the second hangs the actual httpd
session.
It executes o.k. but tries to get the actual webserver process:
[root@linux datenbank]# lsof | grep www
   
httpd 30824 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30825 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30826 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30827 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30828 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30829 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30831 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30835 root   16u  IPv4  28772  TCP *:www
(LISTEN)
_mprshut  31169 root   16u  IPv4  28772  TCP *:www
(LISTEN)

This process is the parent of 1:
[root@linux datenbank]# ps -ef | grep 31169

root 31169 1  0 13:14 ?00:00:00
/home/dlc83e/bin/_mprshut /home/
   

[root@linux datenbank]# ps -ef | grep 30835

root 30835 30824  0 10:59 ?00:00:00
/usr/local/apache/bin/httpd 

Then my actual session of my IE hangs and i only can lose it.
The php script is ended because i got /body and the IE loading bar
vanished.
I can't restart the server because this process 31169 holds port 80
open. 

I use the same script on SCO, Reliant Unix and HP-UX11.
On HP-UX11 the _mprshut also listen on port 80 but on a different
session because the website still reacts.
The apache server restart is impossible before killing this process
manually.
  

Any ideas where i can search the problem ??




-- 
Edit this bug report at http://bugs.php.net/?id=16548edit=1




Bug #16548 Updated: exec or system a daemon will catch the port for this session

2002-04-11 Thread wez

 ID:   16548
 Updated by:   [EMAIL PROTECTED]
 Reported By:  [EMAIL PROTECTED]
-Status:   Bogus
+Status:   Feedback
 Bug Type: Apache related
 Operating System: RED HAT Linux 7.2
 PHP Version:  4.1.2
 New Comment:

Hmm, on second thoughts, it sounds like your OS is broken.
Does the equivalent script written in perl do the same?


Previous Comments:


[2002-04-11 11:35:10] [EMAIL PROTECTED]

Please read the docs about system().
System executes the process and waits for it to complete
before returning.
You need to append an  character to your command to cause
it to run in the background.




[2002-04-11 08:27:19] [EMAIL PROTECTED]

This are my simple commands:
system($DLC/bin/proserve $CADB/$DB 21); 
system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 21);


The first command works fine but the second hangs the actual httpd
session.
It executes o.k. but tries to get the actual webserver process:
[root@linux datenbank]# lsof | grep www
   
httpd 30824 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30825 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30826 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30827 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30828 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30829 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30831 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30835 root   16u  IPv4  28772  TCP *:www
(LISTEN)
_mprshut  31169 root   16u  IPv4  28772  TCP *:www
(LISTEN)

This process is the parent of 1:
[root@linux datenbank]# ps -ef | grep 31169

root 31169 1  0 13:14 ?00:00:00
/home/dlc83e/bin/_mprshut /home/
   

[root@linux datenbank]# ps -ef | grep 30835

root 30835 30824  0 10:59 ?00:00:00
/usr/local/apache/bin/httpd 

Then my actual session of my IE hangs and i only can lose it.
The php script is ended because i got /body and the IE loading bar
vanished.
I can't restart the server because this process 31169 holds port 80
open. 

I use the same script on SCO, Reliant Unix and HP-UX11.
On HP-UX11 the _mprshut also listen on port 80 but on a different
session because the website still reacts.
The apache server restart is impossible before killing this process
manually.
  

Any ideas where i can search the problem ??




-- 
Edit this bug report at http://bugs.php.net/?id=16548edit=1




Bug #16548 Updated: exec or system a daemon will catch the port for this session

2002-04-11 Thread wez

 ID:   16548
 Updated by:   [EMAIL PROTECTED]
 Reported By:  [EMAIL PROTECTED]
-Status:   Open
+Status:   Feedback
 Bug Type: Apache related
 Operating System: RED HAT Linux 7.2
 PHP Version:  4.1.2
 New Comment:

Try this:
system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 21
/dev/null);



Previous Comments:


[2002-04-11 11:46:40] [EMAIL PROTECTED]

Hi,

system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 1/dev/null 21
);

has the same effect!
_mprshut is a daemon that ended in a second.

Please notice: The script doesn't hungs the rest works fine after
system.
I can't open any new page after accessing this script an
_mprshut listen on port 80.
On HP-UX the Apache still works fine with a listening
_mprshut.

Stefan



[2002-04-11 11:37:33] [EMAIL PROTECTED]

Hmm, on second thoughts, it sounds like your OS is broken.
Does the equivalent script written in perl do the same?



[2002-04-11 11:35:10] [EMAIL PROTECTED]

Please read the docs about system().
System executes the process and waits for it to complete
before returning.
You need to append an  character to your command to cause
it to run in the background.




[2002-04-11 08:27:19] [EMAIL PROTECTED]

This are my simple commands:
system($DLC/bin/proserve $CADB/$DB 21); 
system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 21);


The first command works fine but the second hangs the actual httpd
session.
It executes o.k. but tries to get the actual webserver process:
[root@linux datenbank]# lsof | grep www
   
httpd 30824 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30825 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30826 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30827 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30828 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30829 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30831 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30835 root   16u  IPv4  28772  TCP *:www
(LISTEN)
_mprshut  31169 root   16u  IPv4  28772  TCP *:www
(LISTEN)

This process is the parent of 1:
[root@linux datenbank]# ps -ef | grep 31169

root 31169 1  0 13:14 ?00:00:00
/home/dlc83e/bin/_mprshut /home/
   

[root@linux datenbank]# ps -ef | grep 30835

root 30835 30824  0 10:59 ?00:00:00
/usr/local/apache/bin/httpd 

Then my actual session of my IE hangs and i only can lose it.
The php script is ended because i got /body and the IE loading bar
vanished.
I can't restart the server because this process 31169 holds port 80
open. 

I use the same script on SCO, Reliant Unix and HP-UX11.
On HP-UX11 the _mprshut also listen on port 80 but on a different
session because the website still reacts.
The apache server restart is impossible before killing this process
manually.
  

Any ideas where i can search the problem ??




-- 
Edit this bug report at http://bugs.php.net/?id=16548edit=1




Bug #16548 Updated: exec or system a daemon will catch the port for this session

2002-04-11 Thread stefan . marquardt

 ID:   16548
 Updated by:   [EMAIL PROTECTED]
 Reported By:  [EMAIL PROTECTED]
-Status:   Feedback
+Status:   Open
 Bug Type: Apache related
 Operating System: RED HAT Linux 7.2
 PHP Version:  4.1.2
 New Comment:

The same with:
system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 21
/dev/null);

This _mprshut needs no input.
(I mail this problem also to the developer of _mprshut,Progress
Database.)
The rest of the php script finishes but i can't open a new page and
have to close this session.
In the moment i have no further idea to separate this command from the
actual www session.
I tried at, that works but +1 minute is too late. :-(


Previous Comments:


[2002-04-11 11:55:05] [EMAIL PROTECTED]

Try this:
system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 21
/dev/null);




[2002-04-11 11:46:40] [EMAIL PROTECTED]

Hi,

system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 1/dev/null 21
);

has the same effect!
_mprshut is a daemon that ended in a second.

Please notice: The script doesn't hungs the rest works fine after
system.
I can't open any new page after accessing this script an
_mprshut listen on port 80.
On HP-UX the Apache still works fine with a listening
_mprshut.

Stefan



[2002-04-11 11:37:33] [EMAIL PROTECTED]

Hmm, on second thoughts, it sounds like your OS is broken.
Does the equivalent script written in perl do the same?



[2002-04-11 11:35:10] [EMAIL PROTECTED]

Please read the docs about system().
System executes the process and waits for it to complete
before returning.
You need to append an  character to your command to cause
it to run in the background.




[2002-04-11 08:27:19] [EMAIL PROTECTED]

This are my simple commands:
system($DLC/bin/proserve $CADB/$DB 21); 
system(exec $DLC/bin/_mprshut $CADB/$DB -C watchdog 21);


The first command works fine but the second hangs the actual httpd
session.
It executes o.k. but tries to get the actual webserver process:
[root@linux datenbank]# lsof | grep www
   
httpd 30824 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30825 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30826 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30827 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30828 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30829 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30831 root   16u  IPv4  28772  TCP *:www
(LISTEN)
httpd 30835 root   16u  IPv4  28772  TCP *:www
(LISTEN)
_mprshut  31169 root   16u  IPv4  28772  TCP *:www
(LISTEN)

This process is the parent of 1:
[root@linux datenbank]# ps -ef | grep 31169

root 31169 1  0 13:14 ?00:00:00
/home/dlc83e/bin/_mprshut /home/
   

[root@linux datenbank]# ps -ef | grep 30835

root 30835 30824  0 10:59 ?00:00:00
/usr/local/apache/bin/httpd 

Then my actual session of my IE hangs and i only can lose it.
The php script is ended because i got /body and the IE loading bar
vanished.
I can't restart the server because this process 31169 holds port 80
open. 

I use the same script on SCO, Reliant Unix and HP-UX11.
On HP-UX11 the _mprshut also listen on port 80 but on a different
session because the website still reacts.
The apache server restart is impossible before killing this process
manually.
  

Any ideas where i can search the problem ??




-- 
Edit this bug report at http://bugs.php.net/?id=16548edit=1