1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta name="generator" content="HTML Tidy, see www.w3.org">
<title>Abnormal Termination</title>
<meta name="GENERATOR" content=
"Modular DocBook HTML Stylesheet Version 1.71 ">
<link rel="HOME" title=" LPRng-HOWTO" href="index.htm">
<link rel="UP" title="Job Processing" href="jobsteps.htm">
<link rel="PREVIOUS" title="Normal Termination" href=
"normalterm.htm">
<link rel="NEXT" title="Forwarding Jobs" href="bk.htm">
</head>
<body class="SECT1" bgcolor="#FFFFFF" text="#000000" link=
"#0000FF" vlink="#840084" alink="#0000FF">
<div class="NAVHEADER">
<table summary="Header navigation table" width="100%" border=
"0" cellpadding="0" cellspacing="0">
<tr>
<th colspan="3" align="center">LPRng-HOWTO: 1 Apr 2002
(For LPRng-3.8.10)</th>
</tr>
<tr>
<td width="10%" align="left" valign="bottom"><a href=
"normalterm.htm" accesskey="P">Prev</a></td>
<td width="80%" align="center" valign="bottom">Chapter
15. Job Processing</td>
<td width="10%" align="right" valign="bottom"><a href=
"bk.htm" accesskey="N">Next</a></td>
</tr>
</table>
<hr align="LEFT" width="100%">
</div>
<div class="SECT1">
<h1 class="SECT1"><a name="ABNORMALTERM">15.9. Abnormal
Termination</a></h1>
<p>Options used:</p>
<ul>
<li>
<p><tt class="LITERAL">mail_from=</tt><i class=
"EMPHASIS">Mail from user name</i></p>
</li>
<li>
<p><tt class="LITERAL">mail_operator_on_error=</tt><i
class="EMPHASIS">Mail to operator on error</i></p>
</li>
<li>
<p><tt class="LITERAL">send_try=</tt><i class=
"EMPHASIS">Maximum printing or transfer attempts</i></p>
</li>
<li>
<p><tt class="LITERAL">save_on_error</tt> FLAG <i class=
"EMPHASIS">Do not delete on error</i></p>
</li>
<li>
<p><tt class="LITERAL">done_jobs=N</tt><i class=
"EMPHASIS">Save status of last N jobs</i></p>
</li>
<li>
<p><tt class="LITERAL">done_jobs_max_age=N</tt><i class=
"EMPHASIS">Remove status when older than N
seconds</i></p>
</li>
<li>
<p><tt class="LITERAL">send_failure_action=</tt><i class=
"EMPHASIS">Action on Failure</i></p>
</li>
<li>
<p><tt class="LITERAL">sendmail=</tt><i class=
"EMPHASIS">sendmail path name and options</i></p>
</li>
<li>
<p><tt class="LITERAL">stop_on_abort</tt> FLAG <i class=
"EMPHASIS">Stop processing queue on filter abort</i></p>
</li>
</ul>
<br>
<br>
<p>If the job processing terminates abnormally, the following
sequence of events occurs:</p>
<ol type="1">
<li>
<p>The job is marked as having an error during
processing.</p>
</li>
<li>
<p>The <b class="APPLICATION">lpd</b> server will attempt
to kill all filters and other associated processes by
sending a SIGINT and SIGCONT (<tt class="COMMAND">kill
-INT</tt> and <tt class="COMMAND">kill -CONT</tt>) to
them.</p>
</li>
<li>
<p>If there is a <tt class=
"LITERAL">mail_operator_on_error</tt> value, the
specified operator will be mailed an error indication.
The <tt class="LITERAL">sendmail</tt> option specifies
the pathname of the <i class="EMPHASIS">sendmail</i>
program and the options needed to have it read mail
addresses from its standard input. For example, <tt
class="LITERAL">sendmail=/usr/sbin/sendmail -oi -t</tt>
is a commonly used set of options.</p>
</li>
<li>
<p>The <tt class="LITERAL">mail_from</tt> value specifies
the user name used for mail origination. If not
specified, the default is to use the print spool queue or
printer name.</p>
</li>
<li>
<p>If there is a <tt class=
"LITERAL">send_failure_action</tt> specified, then it is
decoded and the corresponding action taken. If the value
is <tt class="LITERAL">remove</tt>, <tt class=
"LITERAL">hold</tt>, <tt class="LITERAL">abort</tt>, or
<tt class="LITERAL">retry</tt>, then the job is removed,
held, aborted, or retried. If the value is <tt class=
"FILENAME">|/program</tt>, the program is executed and
the number of attempts are written to the filter <span
class="ACRONYM">STDIN</span>. The exit status of the
filter will be used to determine the consequent actions.
That is, JSUCC (0) will be success, and the standard
success action will be taken; JFAIL will cause retry,
JREMOVE will cause the job to be removed, JHOLD will
cause the job to be held, JABORT or other status will
abort processing.</p>
</li>
<li>
<p>If the status is ABORT and the <tt class=
"LITERAL">stop_on_abort</tt> flag is set, then further
processing of jobs is terminated. The job is not removed
from the queue.</p>
</li>
<li>
<p>If the error status indicates removal, the <tt class=
"LITERAL">save_on_error</tt> flag is clear, and the <tt
class="LITERAL">done_jobs</tt> and <tt class=
"LITERAL">done_jobs_max_age</tt> values are zero (0),
then the job is removed from the spool queue.</p>
</li>
<li>
<p>If the error status indicates that no further
operations should be performed on the queue, then the <b
class="APPLICATION">lpd</b> server will stop processing
jobs.</p>
</li>
<li>
<p>If the error code indicated that the job should be
retried, and the <tt class="LITERAL">send_try</tt> value
is 0 or the number of attempts is less than the <tt
class="LITERAL">send_try</tt> value, then the job is
retried. Between each attempt to transfer a job to a
remote site. This pause will double after each attempt,
reaching a maximum of <tt class=
"LITERAL">max_connect_interval</tt> seconds. If <tt
class="LITERAL">max_connect_interval</tt> is 0, there is
no limit on the interval value.</p>
</li>
</ol>
<br>
<br>
</div>
<div class="NAVFOOTER">
<hr align="LEFT" width="100%">
<table summary="Footer navigation table" width="100%" border=
"0" cellpadding="0" cellspacing="0">
<tr>
<td width="33%" align="left" valign="top"><a href=
"normalterm.htm" accesskey="P">Prev</a></td>
<td width="34%" align="center" valign="top"><a href=
"index.htm" accesskey="H">Home</a></td>
<td width="33%" align="right" valign="top"><a href=
"bk.htm" accesskey="N">Next</a></td>
</tr>
<tr>
<td width="33%" align="left" valign="top">Normal
Termination</td>
<td width="34%" align="center" valign="top"><a href=
"jobsteps.htm" accesskey="U">Up</a></td>
<td width="33%" align="right" valign="top">Forwarding
Jobs</td>
</tr>
</table>
</div>
</body>
</html>
|