[cups.general] cups does not respect error policy

Johannes Meixner jsmeix at suse.de
Wed Jan 16 02:34:15 PST 2013


Hello,

On Jan 16 07:47 Jan.Dreyer at bertelsmann.de wrote (excerpt):
> ---
> # find /etc/cups | xargs grep -i ErrorPolicy
> /etc/cups/printers.conf.O:ErrorPolicy stop-printer
> /etc/cups/printers.conf.O:ErrorPolicy stop-printer
> /etc/cups/printers.conf.O:ErrorPolicy stop-printer
> /etc/cups/printers.conf:ErrorPolicy stop-printer
> /etc/cups/printers.conf:ErrorPolicy stop-printer
> /etc/cups/printers.conf:ErrorPolicy stop-printer
> ---
>
> ---
> # grep -i '^DeviceURI' /etc/cups/printers.conf
> DeviceURI lpd://bd-p30254.mydomain.net/LPT1
> DeviceURI unc://localhost/
> DeviceURI socket://bd-p30254.mydomain.net
> ---

I never heard about the "unc" backend.
Can you provide more information what this is?


One more note regarding the menaing of ErrorPolicy, see
http://www.cups.org/documentation.php/doc-1.3/man-backend.html
----------------------------------------------------------------
Exit Codes

....

1 (CUPS_BACKEND_FAILED)
   The print file was not successfully transmitted to the
   device or remote server. The scheduler will respond to this
   by canceling the job, retrying the job, or stopping the queue
   depending on the state of the error-policy attribute.

....

4 (CUPS_BACKEND_STOP)
   The print file was not successfully transmitted because
   it cannot be printed at this time. The scheduler will
   respond to this by stopping the queue.

5 (CUPS_BACKEND_CANCEL)
   The print file was not successfully transmitted because
   one or more attributes are not supported. The scheduler will
   respond to this by canceling the job.
----------------------------------------------------------------

This means that only if the backend exits with exit code 1
the ErrorPolicy gets applied but when the backend exits
with exit code 4 the queue gets stopped regardless of
the ErrorPolicy and when the backend exits with exit
code 5 the job gets cancelled regardless of the ErrorPolicy.


> I also didn't try yast for configuring the cup services.
> I will give it a try now, maybe SuSE has made some modifications
> that prevented my changes to load.

We did not modify CUPS in such a way.

Currently in your /etc/cups/printers.conf there is
"ErrorPolicy stop-printer" for all your print queues and that is
what you like to have so that your current CUPS configuration
is o.k.

The problem is that on your system CUPS aborts each job
in contrast to your "ErrorPolicy stop-printer" setting.

Now CUPS debug messages are needed to get a better understanding
what actually goes on on your system, see
http://en.opensuse.org/SDB:How_to_Report_a_Printing_Issue
how to "provide CUPS debug messages".


Additioanlly I will do some testing - perhaps I can reproduce it...


Kind Regards
Johannes Meixner
-- 
SUSE LINUX Products GmbH -- Maxfeldstrasse 5 -- 90409 Nuernberg -- Germany
HRB 16746 (AG Nuernberg) GF: Jeff Hawn, Jennifer Guild, Felix Imendoerffer





More information about the cups mailing list