whna@ciba-geigy.ch (Heinz Naef) (07/18/90)
Processing of a checkgroups control message core-dumps, producing the following alerts to $NEWSMASTER: Relaynews: control message `PATH=/usr/lib/news/bin:/usr/lib/newsbin/ctl;checkgroups <control/6073' exited with status 0105400 cgch relaynews `bad/648248197' failed, status 16 (see errlog) newsdaily (errlog): sh: 18795 Memory fault - core dumped recent bad input batches: bad/648248197 [...] Adb on the core file: core file = problems/cnews/news.core -- program ``sh'' SIGSEGV 11: segmentation violation d0 0x22e69 d1 0xffffffff d2 0x2 d3 0x0 d4 0x0 d5 0x0 d6 0x0 d7 0x2004 a0 0x26000 a1 0x237f8 a2 0x0 a3 0xeffff48 a4 0x23744 a5 0x23800 a6 0xefffd58 sp 0xefffd50 pc 0x24ac ps 0x0 0x0 text address not found The checkgroups report has been sent to $NEWSMASTER and is complete. However, the work files are still in /tmp. That means for me that the crash happens when checkgroups tries to execute the final 'rm -f /tmp/$$*' in the $NEWSBIN/ctl/checkgroups script. C News runs on a Sun 3/160 with SunOS 4.0.3 here. We guess that the problem started to occur after the upgrade to C News Patch Level 25-May-1990. Any idea what happens here? Could an earlier command in the script have destroyed the environment? Maybe someone else experienced the same problem. Hmm..? Thanks in advance for any kind of help. -- Heinz Naef, CIBA-GEIGY AG, R-1045.3.37, P.O.Box, CH-4002 Basel, Switzerland E-mail: whna@ciba-geigy.ch - Phone: +41 61 697 2675 - Fax: +41 61 697 3288
henry@zoo.toronto.edu (Henry Spencer) (07/18/90)
In article <1990Jul18.101929.23679@ciba-geigy.ch> whna@ciba-geigy.ch (Heinz Naef) writes: >C News runs on a Sun 3/160 with SunOS 4.0.3 here. We guess that the problem >started to occur after the upgrade to C News Patch Level 25-May-1990. My guess would be that the timing was coincidental; I don't think we did anything to checkgroups in that patch. What might be significant is the ever-growing number of newsgroups. It looks like it hit some limit in your shell. Geoff has been heard to mutter about Sun shells; I wouldn't know because we don't run them ourselves. (Suns, yes, Sun shells, no.) -- NFS: all the nice semantics of MSDOS, | Henry Spencer at U of Toronto Zoology and its performance and security too. | henry@zoo.toronto.edu utzoo!henry
whna@ciba-geigy.ch (Heinz Naef) (07/19/90)
In article <1990Jul18.162721.951@zoo.toronto.edu> henry@zoo.toronto.edu (Henry Spencer) writes: > >My guess would be that the timing was coincidental; I don't think we did >anything to checkgroups in that patch. What might be significant is the >ever-growing number of newsgroups. It looks like it hit some limit in >your shell. Geoff has been heard to mutter about Sun shells; I wouldn't >know because we don't run them ourselves. (Suns, yes, Sun shells, no.) >-- I modified $NEWSBIN/ctl/checkgroups specifying #!/bin/ksh instead of #!/bin/sh, and inserted a 'set -vx' as follows: [...] # for i in `cat /tmp/$$add` # do # *** "Subject: cmsg " is a hideous botch of a kludge-hack; avoid it! # inews -h <<! #Control: newgroup $i #Newsgroups: control #Subject: newgroup $i #Distribution: general # #Create $i locally. #! # done fi 2>&1 >>/tmp/$$out set -vx if test -s /tmp/$$out; then (echo "Subject: Problems with your active file"; echo ""; cat /tmp/$$out) | mail $NEWSMASTER fi rm -f /tmp/$$* # clean up temporaries Running the following command causes the same crash as if relaynews would have spawned the checkgroups script (login shell is /bin/ksh, too): /usr/lib/news> (PATH=$NEWSCTL/bin:$NEWSBIN/ctl;checkgroups </usr/spool/news/control/6073; echo "exit code $?") if test -s /tmp/$$out; then (echo "Subject: Problems with your active file"; echo ""; cat /tmp/$$out) | mail $NEWSMASTER fi + test -s /tmp/2164out + echo Subject: Problems with your active file + mail usenet + echo + cat /tmp/2164out rm -f /tmp/$$* # clean up temporaries + rm -f /tmp/2164a /tmp/2164add /tmp/2164b /tmp/2164out /tmp/2164remove Memory fault(coredump) /usr/lib/news> adb - core core file = core -- program ``ksh'' SIGSEGV 11: segmentation violation /usr/lib/news> However, running the following command works (login shell is /bin/ksh, too): /usr/lib/news> (PATH=$NEWSCTL/bin:$NEWSBIN/ctl;checkgroups </usr/spool/news/control/6073; /bin/echo "exit code $?") if test -s /tmp/$$out; then (echo "Subject: Problems with your active file"; echo ""; cat /tmp/$$out) | mail $NEWSMASTER fi + test -s /tmp/2322out + echo Subject: Problems with your active file + echo + mail usenet + cat /tmp/2322out rm -f /tmp/$$* # clean up temporaries + rm -f /tmp/2322a /tmp/2322add /tmp/2322b /tmp/2322out /tmp/2322remove exit code 0 /usr/lib/news> Would you agree that there must have something happened to the shell environment the checkgroups script is running in? For the checkgroups script itself, it seems to make no difference whether the script is processed by the Sun /bin/sh or our /bin/ksh. -- Heinz Naef, CIBA-GEIGY AG, R-1045.3.37, P.O.Box, CH-4002 Basel, Switzerland E-mail: whna@ciba-geigy.ch - Phone: +41 61 697 2675 - Fax: +41 61 697 3288
henry@zoo.toronto.edu (Henry Spencer) (07/20/90)
In article <1990Jul19.075348.2504@ciba-geigy.ch> whna@ciba-geigy.ch (Heinz Naef) writes: >Running the following command causes the same crash as if relaynews would have >spawned the checkgroups script (login shell is /bin/ksh, too): > /usr/lib/news> (PATH=$NEWSCTL/bin:$NEWSBIN/ctl;checkgroups </usr/spool/news/control/6073; echo "exit code $?") > ... >However, running the following command works (login shell is /bin/ksh, too): > /usr/lib/news> (PATH=$NEWSCTL/bin:$NEWSBIN/ctl;checkgroups </usr/spool/news/control/6073; /bin/echo "exit code $?") >Would you agree that there must have something happened to the shell environment >the checkgroups script is running in? ... Ouch. Something is really fouling up somewhere in your shell. No idea what it could be. -- NFS: all the nice semantics of MSDOS, | Henry Spencer at U of Toronto Zoology and its performance and security too. | henry@zoo.toronto.edu utzoo!henry