[news.software.b] Bad batches in Cnews

ben@dragonfly.wri.com (Ben Cox) (05/16/91)

I keep getting bad batches in Cnews which, when re-run (mv
/usr/spool/news/in.coming/bad/* /usr/spool/news/in.coming) usually run just
fine.  "errlog" is always empty.

I can see no reason for these batches to be bad, and cannot find enough
documentation (gr*&^!*%!@#*) to give me any more pointers to the problem.

Any ideas?

-- Ben Cox
   ben@wri.com

henry@zoo.toronto.edu (Henry Spencer) (05/16/91)

In article <1991May15.200740.8051@wri.com> ben@dragonfly.wri.com (Ben Cox) writes:
>I keep getting bad batches in Cnews which, when re-run (mv
>/usr/spool/news/in.coming/bad/* /usr/spool/news/in.coming) usually run just
>fine.  "errlog" is always empty.

As I think we mention somewhere -- if we don't, we should -- rerunning batches
tells you very little, because if something was wrong with specific articles,
they will be processed the first time and rejected as duplicates thereafter.
Duplicate rejection is done very early, so other problems would not be seen.

How old is your C News?  Modern ones are generally fairly careful about
errlog, but some old ones didn't flush stdio buffers in some situations.
-- 
And the bean-counter replied,           | Henry Spencer @ U of Toronto Zoology
"beans are more important".             |  henry@zoo.toronto.edu  utzoo!henry

ben@wri.com (Ben Cox) (05/21/91)

I wrote:
>>I keep getting bad batches in Cnews which, when re-run (mv
>>/usr/spool/news/in.coming/bad/* /usr/spool/news/in.coming) usually run just
>>fine.  "errlog" is always empty.

Henry Spencer <henry@zoo.toronto.edu> wrote:
>How old is your C News?  Modern ones are generally fairly careful about
>errlog, but some old ones didn't flush stdio buffers in some situations.

I checked the source, and they do flush the buffers.

From relaynews(8):

     If relaynews cannot establish safe standard file descriptors
     and  standardise  its  environment  (notably PATH, SHELL and
     IFS), probably due to failure of  malloc(3),  it  will  exit
     with status of 1 and without writing any complaints on stan-
     dard error (errlog), as a security precaution.

Well, this appears to be what's happening.  /usr/lib/news/log is fine, but
/usr/lib/news/errlog is empty.  Why would malloc(3) fail in some instances
but not in others?  Hand-examination of the "bad" batches reveals no
anomalies.

-- Ben
   ben@wri.com