DMTF Change Request
DMTF Confidential
All changes to be submitted by the Working Group Chair
(or designee) after approval by the working group.
|
DMTF Change Number
|
CR01016.001
|
|
Originator's Change Number
|
SysDev-Job Fixes
|
|
Errata
|
No
|
|
|
|
|
Short Description
|
Job needs additional scheduling properties and JobScheduleSettingData needs to be renamed, cleaned up
and expanded / A new JobProcessingStatistics class
is defined
|
|
Spec, Document or Model(s) Affected
|
SystemXx_Processing
|
|
Spec, Document or Model Version Incorporating the
Change
|
2.8.0
|
|
Date Originated
|
04/08/03
|
|
Date of Last Revision of the Change Request
|
May 4, 2003
|
Background/Rationale (Explanation of the background and reason(s) for
the requested change, and supporting documentation):
Work in the GGF on BatchJobs has highlighted
several fixes to the V2.8 job model.
Requested Change (Change information
such as details before/after the change, readable/indented MOF, and/or
references to "Uploaded" MOF and other documents if the changes are
too lengthy to include inline):
5 Changes are detailed below:
1. Update the JobSchedule class to fix its
class name (the properties are not just about scheduling and are settings
– this should be reflected in the class name)
2. Remove the scoping association on
JobScheduleSettingData (since the setting data may apply to jobs in several
scopes - coming into a service, being put on a queue, and/or a specific job,
and these all might be on different systems)
3. Also delete the property ReoccuringElapsedTime in lieu of more detailed scheduling
info
The new MOF is:
//
===================================================================
// JobSettingData
//
===================================================================
[Abstract,
Experimental, Version ("2.7.1000"),
Description (
"JobSettingData represents job
characteristics and scheduling "
"information for a CIM_Job. The settings may be
applied to a "
"job
handling Service, a JobQueue or other destination to
which jobs "
"are
submitted, and/or to individual CIM_Jobs. The
applicability "
"of the settings are
defined using the ElementSettingData "
"relationship.
Since the Settings may be defined in several "
"contexts
and applied to many types of elements, this class is "
"defined
as a subclass of SettingData, versus ScopedSettingData.") ]
class CIM_JobSettingData : CIM_SettingData
{
[Write, Description ( <-Deleted
"The length (represented as a time interval) of "
"time between scheduled starts. For example, if Scheduled"
"StartTime indicates 8 pm, this property defines the intervals
"
"between executions - once (value of all zeroes), daily, "
"weekly, monthly, etc.") ]
datetime
ReoccuringElapsedTime;
[Write, Description (
"Number of times that a Job should be run. A value "
"of 1 indicates that the Job is NOT
recurring, while any "
"non-zero value indicates a limit to the
number of times that "
"the Job will recur. Zero indicates that
there is no limit "
"to the number of times that the Job can
be processed, but that "
"it is terminated either AFTER the UntilTime, or by manual "
"intervention. By default, a Job is
processed once."),
ModelCorrespondence {"CIM_Job.JobRunTimes"} ]
uint32
JobRunTimes = 1;
[Write, Description (
"The month during which a Job should be processed.
"
"Specify 0 for January, 1 for February, and so on."),
ValueMap {"0", "1", "2",
"3", "4", "5", "6", "7",
"8", "9",
"10", "11"},
Values {"January", "February", "March",
"April",
"May", "June", "July", "August",
"September",
"October", "November", "December"},
ModelCorrespondence {"CIM_Job.RunMonth",
"CIM_JobSettingData.RunDay",
"CIM_JobSettingData.RunDayOfWeek",
"CIM_JobSettingData.RunStartInterval"} ]
uint8
RunMonth;
[Write, MinValue
(-31), MaxValue (31), Description (
"The day in the month on which a Job should be processed. "
"There
are two different interpretations for this property, "
"depending on the value of RunDayOfWeek. In one case, "
"RunDay defines the day-in-month on which
the Job is "
"processed. This interpretation is used
when the RunDayOfWeek "
"is 0. A positive or negative integer indicates
whether "
"the RunDay
should be calculated from the beginning or the "
"end of the month. For example, 5
indicates the fifth day in "
"RunMonth and -1 indicates
the last day in the RunMonth. \n"
"\n"
"When RunDayOfWeek is not 0, RunDay is the day-in-month "
"on which the Job is processed, defined in
conjunction "
"with RunDayOfWeek.
For example, if RunDay is 15 and "
"RunDayOfWeek is Saturday, then the Job
is processed on "
"the first Saturday on or AFTER the 15th
day in the RunMonth "
"(e.g., the third Saturday in the month). If RunDay is 20 "
"and RunDayOfWeek
is -Saturday, then this indicates the "
"first Saturday on or BEFORE the 20th day
in the RunMonth. "
"If RunDay is -1 and RunDayOfWeek
is -Sunday, then this "
"indicates the last Sunday in the RunMonth."),
ModelCorrespondence {"CIM_Job.RunDay",
"CIM_JobSettingData.RunMonth",
"CIM_JobSettingData.RunDayOfWeek",
"CIM_JobSettingData.RunStartInterval"} ]
sint8
RunDay;
[Write, Description (
"Positive or negative integer used in conjunction
"
"with RunDay to
indicate the day of the week on which "
"a Job is processed. RunDayOfWeek
is set to 0 to indicate "
"an exact day of the month, such as March
1. "
"A positive integer (representing Sunday, Monday,
..., "
"Saturday) means that the day of week is found on or "
"AFTER the specified RunDay.
A negative integer "
"(representing -Sunday, -Monday, ...,
-Saturday) "
"means that the day of week is found on or
BEFORE the "
"RunDay."),
ValueMap {"-7", "-6", "-5",
"-4", "-3", "-2", "-1",
"0", "1", "2", "3",
"4", "5", "6", "7" },
Values {"-Saturday", "-Friday",
"-Thursday", "-Wednesday",
"-Tuesday", "-Monday", "-Sunday", "ExactDayOfMonth",
"Sunday", "Monday", "Tuesday",
"Wednesday",
"Thursday", "Friday", "Saturday" },
ModelCorrespondence {"CIM_Job.RunDayOfWeek",
"CIM_JobSettingData.RunMonth",
"CIM_JobSettingData.RunDay",
"CIM_JobSettingData.RunStartInterval"} ]
sint8
RunDayOfWeek;
[Write, Description (
"The time interval after midnight when a Job should
be "
"processed. For example, \n"
"
00000000020000.000000:000 \n"
"indicates that the Job should be run on
or after "
"two o'clock, local time or
UTC time (distinguished using "
"the LocalOrUtcTime
property."),
ModelCorrespondence {"CIM_Job.RunStartInterval",
"CIM_JobSettingData.RunMonth",
"CIM_JobSettingData.RunDay",
"CIM_JobSettingData.RunDayOfWeek",
"CIM_JobSettingData.LocalOrUtcTime"} ]
datetime RunStartInterval;
[Write, Description ( <-Deleted
"The time that the Job should start.
This may "
"be represented by an actual date and time, or an interval "
"relative to the time that this property is requested. A value
"
"of all zeroes indicates that the Job should not be
scheduled."),
ModelCorrespondence {"CIM_Job.ScheduledStartTime"} ]
datetime ScheduledStartTime;
[Write, Description (
"This property indicates whether the times represented
"
"in the RunStartInterval
and UntilTime properties "
"represent local times or UTC times. Time
values are "
"synchronized worldwide by using the
enumeration value "
"2, \"UTC Time\"."),
ValueMap {"1", "2"},
Values {"Local Time", "UTC Time"}
]
uint16
LocalOrUtcTime;
[Write, Description (
"The setting for a Job's UntilTime - the
time after which an "
"executing Job should be stopped or not be
allowed to proceed. "
"This may be represented by an actual date and time, or an "
"interval relative to the ScheduledStartTime. A value of all "
"nines indicates that the Job can run
indefinitely."),
ModelCorrespondence {"CIM_Job.UntilTime",
"CIM_JobSettingData.LocalOrUtcTime"} ]
datetime UntilTime;
. . .
[Write, Description (
"Indicates whether or not the Job
should be "
"automatically deleted upon completion. Note that the "
"'completion' of a recurring job is defined by its "
"JobRunTimes or UntilTime
properties, OR when the Job "
"is terminated by manual intervention."),
ModelCorrespondence {"CIM_Job.DeleteOnCompletion"}
]
boolean DeleteOnCompletion;
};
The MOF originally read:
//
===================================================================
// ScheduledJob
//
===================================================================
[Abstract, Experimental,
Version ("2.7.0"), Description (
"A ScheduledJob is a subclass of
ScopedSettingData, representing "
"the scheduling
information for a recurring CIM_Job. This is a "
"subclass of
ScopedSettingData since the context for the scheduler "
"is important. The setting information should be
defined in the "
"context of a System -
for example, a ComputerSystem or "
"AdminDomain. This
provides context for how the scheduling data "
"is evaluated and acted
upon. Note that when the Job is "
"executed, CIM_Job should
be related to its scheduling data using "
"the association,
ElementSettingData. When
instantiating the "
"association, the
IsCurrent property MUST be set to 1 "
"\"Is
Current\".") ]
class CIM_ScheduledJob :
CIM_ScopedSettingData {
<DELETED>
[Write, Description (
"The length (represented as a time interval) of "
"time between scheduled starts. For example, if Scheduled"
"StartTime indicates 8 pm, this property defines the
intervals "
"between executions - once (value of all zeroes), daily, "
"weekly, monthly, etc.") ]
datetime
ReoccuringElapsedTime;
[Write, Description (
"The time that the ScheduledJob
should start. This may "
"be represented by an actual date and
time, or an interval "
"relative to the time that this property
is requested. A value "
"of all zeroes indicates that the Job
should not be scheduled."),
ModelCorrespondence {"CIM_Job.ScheduledStartTime"} ]
datetime ScheduledStartTime;
<\DELETED>
<New scheduling
properties inserted>
[Write, Description (
"The setting for a Job's UntilTime - the time after which an "
"executing Job should be stopped or not be allowed to proceed.
"
"This may be represented by an actual date and time, or an "
"interval relative to the ScheduledStartTime."),
ModelCorrespondence {"CIM_Job.UntilTime"} ]
<Added ModelCorrespondence to LocalOrUtcTime>
datetime
UntilTime;
[Write, Description (
"The setting for a Job's Notify property - the user/email "
"to be notified upon a scheduled Job's completion or
failure."),
ModelCorrespondence {"CIM_Job.Notify"} ]
string Notify;
[Write, Description (
"The setting for a Job's Owner property - the user, service "
"method, etc. that defined this setting data and causes the "
"Job to be created."),
ModelCorrespondence {"CIM_Job.Owner"} ]
string Owner;
[Write, Description (
"Indicates the urgency or importance of execution of the "
"Job,
when it is scheduled. The lower the number, the "
"higher the priority."),
ModelCorrespondence {"CIM_Job.Priority"} ]
uint32 Priority;
<Modified Description>
[Write, Description (
"Indicates whether or not the scheduled Job should be "
"automatically deleted upon completion."),
ModelCorrespondence {"CIM_Job.DeleteOnCompletion"} ]
boolean
DeleteOnCompletion;
};
4. Add the scheduling properties to CIM_Job (since they are only in SettingData and the actual
elapsed time may be different than the setting).
5. Update property descriptions where values
are duplicated in the new JobProcessingStatitstics
class.
The updated MOF is (changes in red):
//
===================================================================
// Job
//
===================================================================
[Abstract, Version ("2.7.1000"), Description (
"A Job is a LogicalElement representing an executing unit of work, "
"such
as a script or a print job. A Job is distinct from a Process
"
"in
that a Job can be scheduled, queued, and its execution is not "
"limited
to a single system.") ]
class CIM_Job
: CIM_LogicalElement {
. . .
[Deprecated
{"CIM_Job.RunMonth", "CIM_Job.RunDay",
"CIM_Job.RunDayOfWeek", "CIM_Job.RunStartInterval"},
Write, Description (
"The time that the current Job is scheduled to start.
This may "
"be represented by the actual date and
time, or an interval "
"relative to the time that this property
is requested. A value "
"of all zeroes indicates that the Job is
already executing. The "
"property is deprecated in lieu of the
more expressive scheduling "
"properties, RunMonth,
RunDay, RunDayOfWeek and RunStartInterval.") ]
datetime ScheduledStartTime;
[Description (
"The time that the Job was actually started. This "
"may be represented by an actual date and
time, or by an "
"interval relative to the time that this
property is "
"requested. Note
that this property is also present in the "
"JobProcessingStatistics class.
This is necessary to capture "
"the processing information for recurring
Jobs, since only "
"the 'last' run time can be stored in this
single-valued "
"property.") ]
datetime StartTime;
[Description (
"The time interval that the Job has been executing or the "
"total execution time if the Job is
complete. Note that "
"this property is also present in the JobProcessingStatistics "
"class. This is necessary to capture the processing "
"information for recurring Jobs, since only
the 'last' "
"run time can be stored in this
single-valued property.") ]
datetime ElapsedTime;
[Write, Description (
"Number of times that the Job should be run. A value "
"of 1 indicates that the Job is NOT
recurring, while any "
"non-zero value indicates a limit to the
number of times that "
"the Job will recur. Zero indicates that
there is no limit "
"to the number of times that the Job can
be processed, but that "
"it is terminated either AFTER the UntilTime, or by manual "
"intervention. By default, a Job is
processed once.") ]
uint32
JobRunTimes = 1;
[Write, Description (
"The month during which the Job should be processed. "
"Specify 0 for January, 1 for February, and so on."),
ValueMap {"0", "1", "2",
"3", "4", "5", "6", "7",
"8", "9",
"10", "11"},
Values {"January", "February", "March",
"April",
"May", "June", "July", "August",
"September",
"October", "November", "December"},
ModelCorrespondence {"CIM_Job.RunDay",
"CIM_Job.RunDayOfWeek", "CIM_Job.RunStartInterval"} ]
uint8
RunMonth;
[Write, MinValue
(-31), MaxValue (31), Description (
"The day in the month on which the Job should be processed. "
"There
are two different interpretations for this property, "
"depending on the value of DayOfWeek. In one case, "
"RunDay defines the day-in-month on which
the Job is "
"processed. This interpretation is used
when the DayOfWeek "
"is 0. A positive or negative integer indicates
whether "
"the RunDay
should be calculated from the beginning or the "
"end of the month. For example, 5
indicates the fifth day in "
"RunMonth and -1 indicates
the last day in the RunMonth. \n"
"\n"
"When RunDayOfWeek is not 0, RunDay is the day-in-month "
"on which the Job is processed, defined in
conjunction "
"with RunDayOfWeek.
For example, if RunDay is 15 and "
"RunDayOfWeek is Saturday, then the Job
is processed on "
"the first Saturday on or AFTER the 15th
day in the RunMonth "
"(e.g., the third Saturday in the month). If RunDay is 20 "
"and RunDayOfWeek
is -Saturday, then this indicates the "
"first Saturday on or BEFORE the 20th day
in the RunMonth. "
"If RunDay is -1 and RunDayOfWeek
is -Sunday, then this "
"indicates the last Sunday in the RunMonth."),
ModelCorrespondence {"CIM_Job.RunMonth",
"CIM_Job.RunDayOfWeek", "CIM_Job.RunStartInterval } ]
sint8
RunDay;
[Write, Description (
"Positive or negative integer used in conjunction
"
"with RunDay to
indicate the day of the week on which "
"the Job is processed. RunDayOfWeek
is set to 0 to indicate "
"an exact day of the month, such as March
1. "
"A positive integer (representing Sunday, Monday,
..., "
"Saturday) means that the day of week is found on or "
"AFTER the specified RunDay.
A negative integer "
"(representing -Sunday, -Monday, ...,
-Saturday) "
"means that the day of week is found on or
BEFORE the "
"RunDay."),
ValueMap {"-7", "-6", "-5",
"-4", "-3", "-2", "-1",
"0", "1", "2", "3",
"4", "5", "6", "7" },
Values {"-Saturday", "-Friday",
"-Thursday", "-Wednesday",
"-Tuesday", "-Monday", "-Sunday", "ExactDayOfMonth",
"Sunday", "Monday", "Tuesday",
"Wednesday",
"Thursday", "Friday", "Saturday" },
ModelCorrespondenc{"CIM_Job.RunMonth",
"CIM_Job.RunDay",
"CIM_Job.RunStartInterval"} ]
sint8
RunDayOfWeek;
[Write, Description (
"The time interval after midnight when the Job
should be "
"processed. For example, \n"
"
00000000020000.000000:000 \n"
"indicates that the Job should be run on
or after "
"two o'clock, local time or
UTC time (distinguished using "
"the LocalOrUtcTime
property."),
ModelCorrespondence {"CIM_Job.RunMonth",
"CIM_Job.RunDay",
"CIM_Job.RunDayOfWeek", "CIM_Job.RunStartInterval"} ]
datetime RunStartInterval;
[Write, Description (
"This property indicates whether the times represented
"
"in the RunStartInterval
and UntilTime properties "
"represent local times or UTC times. Time
values are "
"synchronized worldwide by using the
enumeration value "
"2, \"UTC Time\"."),
ValueMap {"1", "2"},
Values {"Local Time", "UTC Time"} ]
uint16
LocalOrUtcTime;
[Write, Description (
"The time after which the Job is invalid or should be "
"stopped. This may be represented by an actual
date and time, "
"or by an interval relative to the time
that this property is "
"requested. A value of all nines indicates that the Job "
"can run indefinitely."),
ModelCorrespondence {"CIM_Job.LocalOrUtcTime"} ]
datetime UntilTime;
. . .
[Write, Description (
"Indicates the urgency or importance of execution of the "
"Job. The lower the number, the higher the priority."
"Note that this property is also present in
the "
"JobProcessingStatistics class.
This is necessary to capture "
"the setting information that would
influence a Job's results.") ]
uint32
Priority;
[Description(
"The
percentage of the job that has completed at the time "
"that this value is requested. Note that this property is "
"also present in the JobProcessingStatistics
class. This "
"is necessary to capture the processing
information for "
"recurring Jobs, since only the 'last' run data can be "
"stored in this single-valued property."),
MaxValue (101), MinValue (0), Units
("Percent") ]
uint16
PercentComplete;
[Write, Description(
"Indicates whether or not the job should be automatically
"
"deleted upon completion. Note that the "
"'completion' of a recurring job is defined by its "
"JobRunTimes or UntilTime
properties, OR when the Job "
"is terminated by manual intervention. If this property is "
"set to false and the job completes, then
the extrinsic "
"method DeleteInstance
MUST be used to delete the job versus "
"updating this property.") ]
boolean DeleteOnCompletion;
[Description(
"A vendor specific error code. This MUST be set to zero "
"if the Job
completed without error. Note that this property "
"is also present in the JobProcessingStatistics class. This "
"is necessary to capture the processing
information for "
"recurring Jobs, since only the 'last' run error can be "
"stored in this single-valued property."),
ModelCorrespondence {"CIM_Job.ErrorDescription"} ]
uint16
ErrorCode;
[Description(
"A free form string containing the vendor error description. "
"Note that this property is also present in
the "
"JobProcessingStatistics class.
This is necessary to capture "
"the processing information for recurring
Jobs, since only "
"the 'last' run error can be stored in
this single-valued "
"property."),
ModelCorrespondence {"CIM_Job.ErrorCode"} ]
string
ErrorDescription;
. . .
};
Originally, the MOF read:
//
===================================================================
// Job
//
===================================================================
[Abstract, Version
("2.7.0"), Description (
"A Job is a LogicalElement representing an executing unit of work, "
"such
as a script or a print job. A Job is distinct from a Process
"
"in
that a Job can be scheduled, queued, and its execution is not "
"limited
to a single system.") ]
class CIM_Job
: CIM_LogicalElement {
[Description (
"A free form string representing the Job's status. "
"The primary status is reflected in the inherited
"
"OperationalStatus property. JobStatus provides additional, "
"implementation-specific details."),
ModelCorrespondence {
"ManagedSystemElement.OperationalStatus"} ]
string
JobStatus;
[Description (
"The time that the Job was submitted to execute. A
value of all "
"zeroes indicates that the owning element
is not capable of "
"reporting a date and time. Therefore, the ScheduledStartTime "
"and StartTime
are reported as intervals relative to the time "
"their
values are requested.") ]
datetime TimeSubmitted;
<Deprecated>
[Write, Description (
"The time that the current Job is scheduled to start.
This may "
"be represented by the actual date and
time, or an interval "
"relative to the time that this property
is requested. A value "
"of all zeroes indicates that the Job is
already executing.") ]
datetime ScheduledStartTime;
<DESCRIPTIONS
MODIFIED>
[Description (
"The time that the Job was actually started. This "
"may be represented by an actual date and
time, or by an "
"interval relative to the time that this
property is requested.") ]
datetime StartTime;
[Description (
"The time interval that the Job has been executing or the "
"total execution time if the Job is
complete.") ]
datetime ElapsedTime;
<\DESCRIPTIONS
MODIFIED>
[Write, Description (
"The time after which the Job is invalid or should be "
"stopped. This may be represented by an actual
date and time, "
"or by an interval relative to the time
that this property is "
"requested. A value of all nines indicates that the Job "
"can run indefinitely.") ]
<ModelCorrespondence added>
datetime UntilTime;
[Write, Description (
"User to be notified upon the Job completion or
failure.") ]
string
Notify;
[Description (
"The User that submitted the Job or the Service/method name/etc. "
"that caused the job to be
created."),
ModelCorrespondence
{"CIM_OwningJobElement"}
]
string
Owner;
<DESCRIPTIONS
MODIFIED>
[Write, Description (
"Indicates the urgency or importance of execution of the "
"Job. The
lower the number, the higher the priority.") ]
uint32
Priority;
[Description(
"The
percentage of the job that has completed at the time "
"that this value is requested. "),
MaxValue (101), MinValue (0),
Units ("Percent") ]
uint16
PercentComplete;
[Write, Description(
"Indicates whether or not the job should be automatically
"
"deleted upon completion. If this property is set to false"
"and the job completes, then the extrinsic
method DeleteInstance"
"MUST be used to delete the job versus updating this
property.") ]
boolean DeleteOnCompletion;
[Description(
"A vendor specific error code. This will be set to zero "
"if the job completed without
error."),
ModelCorrespondence {"CIM_Job.ErrorDescription"} ]
uint16
ErrorCode;
[Description(
"A free form string containing the vendor error
"
"description."),
ModelCorrespondence {"CIM_Job.ErrorCode"} ]
string
ErrorDescription;
<\DESCRIPTIONS
MODIFIED>
[Description(
"A method to kill this job and any underlying processes, and "
"to remove any 'dangling'
associations."),
ValueMap {"0", "1", "2",
"3", "4", "6", "7",
"..", "32768..65535"},
Values {"Success", "Not Supported", "Unknown",
"Timeout",
"Failed", "Access Denied", "Not Found",
"DMTF Reserved",
"Vendor Specific"} ]
uint32
KillJob(
[IN,
Description ("Indicates whether or not the Job "
"should be automatically deleted upon
termination. "
"This parameter takes precedence over the property, "
"DeleteOnCompletion.")
]
boolean DeleteOnKill);
};
6.
Add a new
class, JobProcessingStatistics to the SystemXx_Processing MOF. The class is defined as follows:
//
===================================================================
// JobProcessingStatistics
//
===================================================================
[Experimental, Version
("2.7.1000"), Description (
"This class records the
completion statistics (such as "
"ElapsedTime) and other information for its associated Job.
The "
"class
will be extended in a future release to include statistics "
"regarding
resource utilization. Note that there may be many "
"instances
of this class if the Job is recurring (i.e., if its "
"JobRunTimes
property is not 1).") ]
class CIM_JobProcessingStatistics
: CIM_StatisticalData {
[Description (
"The time that this invocation of the Job was started. This "
"SHOULD be represented by an actual date and time, and not in "
"interval format."),
ModelCorrespondence {"CIM_Job.StartTime"} ]
datetime StartTime;
[Description (
"The total execution time of the Job. This MUST be "
"represented in interval format."),
ModelCorrespondence {"CIM_Job.ElapsedTime"} ]
datetime ElapsedTime;
[Description (
"Indicates the urgency or importance of execution of the "
"Job. The
lower the number, the higher the priority."),
ModelCorrespondence {"CIM_Job.Priority"} ]
uint32
Priority;
[Description(
"The
percentage of the job that was completed at the time "
"that the Job terminated. Note that this
value will be less "
"than 100 if the Job terminated prematurely."),
MaxValue (101), MinValue (0),
Units ("Percent"),
ModelCorrespondence {"CIM_Job.PercentComplete"} ]
uint16
PercentComplete;
[Description(
"A vendor specific error code related to the processing of "
"the Job. This MUST be set to zero if the Job
completed "
"without error."),
ModelCorrespondence {"CIM_Job.ErrorCode",
"CIM_JobProcessingStatistics.ErrorDescription"} ]
uint16
ErrorCode;
[Description(
"A free form string containing the vendor error
"
"description for the property, ErrorCode."),
ModelCorrespondence {"CIM_Job.ErrorDescription",
"CIM_JobProcessingStatistics.ErrorCode"} ]
string
ErrorDescription;
};
Discussion Points (Summary of
decisions and discussions of the WG in creating this CR):
Ballot comments:
481 – ScheduledJob –
Comments from ballot on 4/22
· The version appears incorrect. The CR states
2.8 but the class states it
is 2.7. – FIXED
· This proposal handles a special case of a more general
problem. The issue
is that RecurringElapsedTime does not deal with the
common cases like:
"Every week on a Monday and a Thursday". – DELETED RecurringElapsedTime FROM THE MODEL AND REPLACED IT WITH
PROPERTIES SIMILAR TO THOSE DEFINED IN CIM_TimeZone.
· It sounds
like these settings are in the context of a specific CIM_JOB, so
shouldn't the scoped setting data association be used? – NO, COULD BE
DEFINED RELATIVE TO A SYSTEM, SERVICE, QUEUE, OR JOB (AND THIS CAN BE CONVEYED
USING ElementSettingData), AND SINCE JOBS CAN MOVE
AROUND – THIS COULD NOT BE SCOPED BY ANY SYSTEM.
· What does it mean for the start time to be relative to
when the property
is requested? – THE DESCRIPTION STATES THAT THIS IS TRUE IF INTERVAL
FORMAT IS RETURNED. IT INDICATES THAT THE JOB STARTS ON OR AFTER THE INTERVAL
IS ELAPSED.
· If I request the propery more
than once, does this then become a recurring
job? – NO, BUT THE WHOLE RECURRING THING NEEDS TO BE CLARIFIED. AMBIGUITY SHOULD BE REMOVED BY THE JobRunTimes PROPERTY.
· One small nit - the version should be 2.8 instead of 2.7.
– FIXED
· Instead of RecurringElapsedTime,
would a property name like
ScheduledJobInterval be clearer? – REMOVED RecurringElapsedTime FROM THE MODEL.
· If DeleteOnCompletion is true,
the value of the RecurringElapsedTime
property doesn't matter, right? – IT DOES, THE DESCRIPTION IS UPDATED TO
CLARIFY THIS.
· RecurringElapsedTime alone is
awkward as a datetime. Schedules that recur
are often daily, weekly, bi-weekly, etc. although a specific datetime as a
period is also needed. Setting a datetime value to
all zeros is not a friendly way of testing whether a schedule repeats. – ANSWERED
ABOVE.
· Need an enumeration with common recurrances,
as well as an
OtherRecurringElapsedTime that uses the datetime. A value of None
indicates
no recurrence. – THE CHANGES TO THE MODEL SHOULD PROVIDE EQUIVALENT
FUNCTIONALITY.
Change History (Mandatory after
submission to the TC, May be used by the WGs):
|
Initial Version
|
04/08/03
|
Initial submission
|
|
Version .001
|
05/04/03
|
Changes to address ballot comments.
|
|
|
|
|
Note that this document is labeled as "DMTF Confidential".
It is intended only for DMTF member companies and alliance partners.
This Change Request may be withdrawn or modified by subsequent CRs.