Subject: Re: JMP> jmJobState and jmJobStateReasonsTC [ISSUE: Are ther

From: Harry Lewis <[email-masked]>
Date: Tue, 27 May 1997 13:14:38 -0400

Good catch, Jay. Pending should certainly not have been removed from the
mandatory list of job States. I assume this is just a slip-up. Tom, will you
please confirm?

>What happened to "pending" as a mandatory job state?  I certainly hope
>we don't relegate this important state to the "Conditionally Mandatory"
>realm.

>> The current draft lists processing, needsAttention, canceled, and completed
>> as Mandatory.  Since needsAttention has gone away, that leaves three
>> states as mandatory:  processing, canceled, and completed.  Since we added
>> aborted, I assume that aborted should be added to the mandatory list.

Harry Lewis - IBM Printing Systems

---

From: Harry Lewis <[email-masked]>
Date: Tue, 27 May 1997 14:14:12 -0400

Even printers that don't spool or queue will typically "buffer" some number of
pages. Given the possibility of single page jobs... then some jobs can be
pending. I guess we should ask ourselves what it means to have a "mandatory"
state. Just because a state is Mandatory does not mean an implementation must
"force" jobs to enter that state. If that were so... I'd REALLY be in favor of
eliminating the NeedsAttention state! ;->

------- Forwarded by Harry Lewis/Boulder/IBM on 05/27/97 11:59 AM ------

        [email-masked]
        05/27/97 11:51 AM
Please respond to [email-masked] @ internet

To: [email-masked] @ internet, [email-masked] @ internet
cc: [email-masked] @ internet
Subject: Re: JMP> jmJobState and jmJobStateReasonsTC [ISSUE: Are ther

If a simple output device implements IPP and doesn't queue or spool, wouldn't
the jobs in that output device never be in pending?  Such a device would
refuse acceptance of another job, while it was processing its current job.
That is why pending is conditionally mandatory in IPP and therfore also in
JMP.

Would it help to indicate that if an implementation queues or spools,
that it shall implement the 'pending' state jobs that are queued or spooled
but are not yet processing?

Tom

---

From: Harry Lewis <[email-masked]>
Date: Tue, 27 May 1997 16:58:23 -0400

I like Ron's wording...

> The object jmJobState should be mandatory.  All possible enums for this
> object must be reported if implemented and available to the agent.

---

From: Tom Hastings <[email-masked]>
Date: Wed, 28 May 1997 02:07:43 PDT

>> object must be reported if implemented and available to the agent.

Again, we will certainly confuse the IETF if we redefine what mandatory
means by using the defintion for conditionally mandatory as Ron has.

We must, as we did for the Printer MIB jmGeneralReset, decide which
values an agent must implement whether the device does or not
and which values the agent need only implement if the device does.
We must label the former Mandatory and the latter Conditionally Mandatory.

---

From: Tom Hastings <[email-masked]>
Date: Wed, 28 May 1997 02:07:00 PDT

>mandatory list of job States. I assume this is just a slip-up. Tom, will you

I thought that we had agreed that an output device that doesn't
queue and doesn't spool might not be forced to have a pending
state for jobs, if the jobs are not delayed in any way.  As Peter
Zehler points out, a non-queueing, non-spooling printer might 
still want to have a pending state, if is can be for a user-visible
length of time.  But such an implementation should not be forced
to have such as state, ok?

But if there is any kind of delay between when a job is submitted
and it is started to be processed, then a pending state is required
for the jobs.  Thats the meaning of Conditionally Mandatory.

---

From: Tom Hastings <[email-masked]>
Date: Wed, 28 May 1997 02:07:04 PDT

At 11:14 05/27/97 PDT, Harry Lewis wrote:
>pages. 

But isn't the definition of "queuing" on page 13, line 364, what you mean
by "buffering" some number of jobs?

Given the possibility of single page jobs... then some jobs can be
>eliminating the NeedsAttention state! ;->

We keep getting confused by whether a MIB is talking about the printer
or is talking about what the agent shall show about the printer.
I claim that MIBs are all about the latter and nothing to do with
the former.

See my early answer to Ron about the completed state.  Most printers
won't have such a state, the printer throws the job away as soon as it
is printed.  Its the agent that has to keep the job information in the
MIB tables for the time indicated in the jmGeneralJobPersistence object.
If the 'completed' state were conditionally mandatory, then an agent would
only have to show jobs in the 'completed' state, if the device implemented
the completed state. But we aren't going to allow agents off the hook.
The agent has to implement the 'completed' state. Same for 'aborted'.

'canceled', is conditionally mandatory, because level 1 IPP doesn't requiure
the CancelJob operation.  So we aren't going to force agents to show
a canceled state, except for printers that implement a CancelJob operation.

For needsAttention, is is impossible to design a device that handles paper
that doesn't need attention some time (unless it plants, grows, harvests trees,
makes paper, and fixes all jams).  So making needsAttention Mandatory forces
the agent to show jobs in the needsAttention state, if the printer jams.

---

From: Harry Lewis <[email-masked]>
Date: Thu, 29 May 1997 12:03:35 -0400

I'd hate to think we might confuse the IETF...

>means by using the defintion for conditionally mandatory as Ron has.

Yes, I think I see the clarity already ;-)

>We must label the former Mandatory and the latter Conditionally Mandatory.

Harry Lewis - Individual