From: Jeremy Chadwick on
On Wed, Jul 07, 2010 at 08:35:28AM +0930, Daniel O'Connor wrote:
> Does anyone else see this?
> I have 2 (of 2) amd64 8.x systems which don't start MIMEDefang on reboot properly, I get this..
>
> Jul 7 06:34:58 cain mimedefang-multiplexor[1747]: Starting slave 3 (pid 41198) (1 running): Bringing slaves up to minSlaves (2)
> Jul 7 06:34:58 cain mimedefang-multiplexor[1747]: Slave 3 stderr: Can't load '/usr/local/lib/perl5/5.10.1/mach/auto/File/Glob/Glob.so' for module File::Glob: /usr/local/lib/perl5/5.10.1/mach/auto/File/Glob/Glob.so: mmap of entire address space failed: Cannot allocate memory at /usr/local/lib/perl5/5.10.1/mach/XSLoader.pm line 70. at /usr/local/lib/perl5/5.10.1/mach/File/Glob.pm line 96 Compilation failed in require at /usr/local/bin/mimedefang.pl line 3239. BEGIN failed--compilation aborted at /usr/local/bin/mimedefang.pl line 3239.
>
> Restarting it manually (ie /usr/local/etc/rc.d/mimedefang.sh restart) after a reboot fixes it..
>
> Also I think it would be nice if this patch were added to the port..
>
> --- /usr/local/etc/rc.d/mimedefang.sh-dist 2010-04-07 10:30:46.586067014 +0930
> +++ /usr/local/etc/rc.d/mimedefang.sh 2010-05-01 13:47:47.340517685 +0930
> @@ -316,7 +319,7 @@
> rm -f $MX_SOCKET > /dev/null 2>&1
> rm -f $SOCKET > /dev/null 2>&1
>
> - if [ "$1" = "wait" ] ; then
> + if [ "wait" = "wait" ] ; then
> printf "Waiting for daemons to exit."
> WAITPID=""
> test -f $PID && WAITPID=`cat $PID`
>
> Otherwise restart is useless because it starts MD without waiting for the old one to stop and it doesn't work :(

This should probably go to freebsd-ports not -stable, since both
mimedefang and perl are ports things. CC'ing.

Also, that patch doesn't look correct, or you got your diff arguments
backwards (e.g. change should be fixing the wait=wait comparison to
use $1=wait).

--
| Jeremy Chadwick jdc(a)parodius.com |
| Parodius Networking http://www.parodius.com/ |
| UNIX Systems Administrator Mountain View, CA, USA |
| Making life hard for others since 1977. PGP: 4BD6C0CB |

_______________________________________________
freebsd-ports(a)freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscribe(a)freebsd.org"

From: "Daniel O'Connor" on

On 07/07/2010, at 12:12, Jeremy Chadwick wrote:
>> --- /usr/local/etc/rc.d/mimedefang.sh-dist 2010-04-07 10:30:46.586067014 +0930
>> +++ /usr/local/etc/rc.d/mimedefang.sh 2010-05-01 13:47:47.340517685 +0930
>> @@ -316,7 +319,7 @@
>> rm -f $MX_SOCKET > /dev/null 2>&1
>> rm -f $SOCKET > /dev/null 2>&1
>>
>> - if [ "$1" = "wait" ] ; then
>> + if [ "wait" = "wait" ] ; then
>> printf "Waiting for daemons to exit."
>> WAITPID=""
>> test -f $PID && WAITPID=`cat $PID`
>>
>> Otherwise restart is useless because it starts MD without waiting for the old one to stop and it doesn't work :(
>
> This should probably go to freebsd-ports not -stable, since both
> mimedefang and perl are ports things. CC'ing.

True.

> Also, that patch doesn't look correct, or you got your diff arguments
> backwards (e.g. change should be fixing the wait=wait comparison to
> use $1=wait).

No, really, I want it to always succeed.

The optional wait appears to be a Linux thing, however rc.d scripts on FreeBSD [should] always wait for their daemons to exit, otherwise restart will try and start it before it has exited.

--
Daniel O'Connor software and network engineer
for Genesis Software - http://www.gsoft.com.au
"The nice thing about standards is that there
are so many of them to choose from."
-- Andrew Tanenbaum
GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C






_______________________________________________
freebsd-ports(a)freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscribe(a)freebsd.org"