Patrick Powell wrote: > > From [EMAIL PROTECTED] Wed Mar 20 05:59:18 2002 > > Date: Wed, 20 Mar 2002 14:00:27 +0100 > > From: Sergij Kovalenko <[EMAIL PROTECTED]> > > To: [EMAIL PROTECTED] > > Subject: LPRng: Bug: blocking in queue whith filter producing no output > > > > Hello Patrick, > > > > Text files are sent in a bounce queue in which they are processed using a filter, >then files are > > sent in other queue. > > If the filter in bounce queue produces no output, lpd tries to send this >printing job, which > > includes zero length data file, to the next queue. Transmition of zero length >data file causes > > blocking of this queue. > > > > 2 functions are involved in this blocking: Link_send() and Link_file_read() . > > > > Link_send() > > 1. transmits 0 bytes with 'ack', it seems there no actions in depth of TCP/IP. > > 2. waits to read 'ack'. > > > > Link_file_read(): > > 1. waits to read 0 bytes. > > > > > > Thanks, > > > > Sergiy Kovalenko > > Firmengruppe Dr. Gueldener > > You are correct. Now the problem is: > > When a filter produces 0 bytes of output, is this an error? > > OR is it correct operation and the job should be discarded? > > OR just the file in the job should be discarded? > > I suggest treating this as a catastrophic error and abort the job with > a fatal (JABORT) status. >
It would be better to treat operation as correct and just the file in the job should be discarded. If all files produces no output, is it correct operation and the job should be discarded. For example in some cases we have a job with 3 files, but only 1 file produces output. Other files are needed by filter to process the main file. May be for other people it would be useful to treat the job as fatal. A configuration flag for queue/lpd could be used to distinguish different requirements. > > Patrick Powell Astart Technologies, > [EMAIL PROTECTED] 9475 Chesapeake Drive, Suite D, > Network and System San Diego, CA 92123 > Consulting 858-874-6543 FAX 858-279-8424 > LPRng - Print Spooler (http://www.lprng.com) > > ----------------------------------------------------------------------------- > YOU MUST BE A LIST MEMBER IN ORDER TO POST TO THE LPRNG MAILING LIST > The address you post from MUST be your subscription address > > If you need help, send email to [EMAIL PROTECTED] (or lprng-requests > or lprng-digest-requests) with the word 'help' in the body. For the impatient, > to subscribe to a list with name LIST, send mail to [EMAIL PROTECTED] > with: | example: > subscribe LIST <mailaddr> | subscribe lprng-digest [EMAIL PROTECTED] > unsubscribe LIST <mailaddr> | unsubscribe lprng [EMAIL PROTECTED] > > If you have major problems, send email to [EMAIL PROTECTED] with the word > LPRNGLIST in the SUBJECT line. > ----------------------------------------------------------------------------- Thanks, Sergiy Kovalenko Firmengruppe Dr. Gueldener ----------------------------------------------------------------------------- YOU MUST BE A LIST MEMBER IN ORDER TO POST TO THE LPRNG MAILING LIST The address you post from MUST be your subscription address If you need help, send email to [EMAIL PROTECTED] (or lprng-requests or lprng-digest-requests) with the word 'help' in the body. For the impatient, to subscribe to a list with name LIST, send mail to [EMAIL PROTECTED] with: | example: subscribe LIST <mailaddr> | subscribe lprng-digest [EMAIL PROTECTED] unsubscribe LIST <mailaddr> | unsubscribe lprng [EMAIL PROTECTED] If you have major problems, send email to [EMAIL PROTECTED] with the word LPRNGLIST in the SUBJECT line. -----------------------------------------------------------------------------
