Problem Note 55972: Master Loop jobs fail with "ERROR: Errors in loading model development data ..." when run in sequence instead of in parallel
In SAS ® Credit Scoring for Banking, after you create a PD model and published it, you run the job MasterLoopModelDevJob from SAS® Data Integration Studio. However, you might encounter a problem with the &status_table variable and the job fails. An error message similar to the following is displayed in the job log:
MLOGIC(UPD_STATUS): %PUT ERROR: %sysfunc(sasmsg(smd_ds.bismsg,csmart.model_dev_load_error.1, noquote))
ERROR: Errors in loading model development data in Credit Scoring Additions Mart. Check Parameter_List_Model_dev table and log files
MLOGIC(UPD_STATUS): %ABORT ABEND
ERROR: Execution terminated by an %ABORT statement.
The inner-loop jobs MasterLoopModelDevJob and MasterLoopCreditScoringJob, and other master jobs, have an option "Run jobs in parallel". In the original job from SAS Credit Scoring for Banking, this option is selected so that jobs run in parallel. If this option is deselected, then jobs fail because they do not find the status table "work.loop_Job_status" to update the status.
If you turn off parallel execution (the option is deselected), then you need to make the following modification to job metadata. Use these steps to add code in the Loop Transform pre-code section of the master loop jobs. These steps must be performed to this list of jobs:
- MasterLoopStarSchemaJob
- MasterLoopModelDevJob
- MasterLoopCreditScoringJob
- MasterLoopPoolScoreJob
- MasterLoopBusinessReportsJob
- Log on to SAS Data Integration Studio using the Admin role.
- Close any open SAS Data Integration Studio jobs, and SAS sessions (examples: Base
SAS®, SAS® Enterprise Guide).
- Go to the desired master loop job and open it.
- Select Loop Transform in this job. Right-click the selected Loop Transform and
select Properties.
- Go to the Pre-Code tab and add the following code.
data work.loop_Job_status
(keep = etls_handleName etls_machineId etls_startTime etls_endTime
etls_status etls_jobRC JOB_NM);
attrib etls_handleName length = $32
label = 'Name of handle to remote session';
attrib etls_machineId length = $32
label = 'Name of machine executing the task';
attrib etls_startTime length = 8
format = DATETIME.
informat = DATETIME.
label = 'Start time of task';
attrib etls_endTime length = 8
format = DATETIME.
informat = DATETIME.
label = 'End time of task';
attrib etls_status length = $32
label = 'Current status of task';
attrib etls_jobRC length = 8
label = 'Return code of task';
attrib JOB_NM length = $40;
run;
- Save the changes, and close the job.
- Run the job.
Operating System and Release Information
| SAS System | SAS Credit Scoring for Banking Server | Microsoft® Windows® for x64 | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows 8 Enterprise 32-bit | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows 8 Enterprise x64 | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows 8 Pro 32-bit | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows 8 Pro x64 | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows 8.1 Enterprise 32-bit | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows 8.1 Enterprise x64 | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows 8.1 Pro | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows 8.1 Pro 32-bit | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows Server 2003 Datacenter Edition | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows Server 2003 Enterprise Edition | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows Server 2003 Standard Edition | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows Server 2003 for x64 | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows Server 2008 | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows Server 2008 R2 | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows Server 2008 for x64 | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows Server 2012 Datacenter | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows Server 2012 R2 Datacenter | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows Server 2012 R2 Std | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows Server 2012 Std | 5.2 | | 9.3 TS1M2 | |
| Microsoft Windows XP Professional | 5.2 | | 9.3 TS1M2 | |
| Windows 7 Enterprise 32 bit | 5.2 | | 9.3 TS1M2 | |
| Windows 7 Enterprise x64 | 5.2 | | 9.3 TS1M2 | |
| Windows 7 Home Premium 32 bit | 5.2 | | 9.3 TS1M2 | |
| Windows 7 Home Premium x64 | 5.2 | | 9.3 TS1M2 | |
| Windows 7 Professional 32 bit | 5.2 | | 9.3 TS1M2 | |
| Windows 7 Professional x64 | 5.2 | | 9.3 TS1M2 | |
| Windows 7 Ultimate 32 bit | 5.2 | | 9.3 TS1M2 | |
| Windows 7 Ultimate x64 | 5.2 | | 9.3 TS1M2 | |
| Windows Vista | 5.2 | | 9.3 TS1M2 | |
| Windows Vista for x64 | 5.2 | | 9.3 TS1M2 | |
| 64-bit Enabled AIX | 5.2 | | 9.3 TS1M2 | |
| 64-bit Enabled Solaris | 5.2 | | 9.3 TS1M2 | |
| HP-UX IPF | 5.2 | | 9.3 TS1M2 | |
| Linux | 5.2 | | 9.3 TS1M2 | |
| Linux for x64 | 5.2 | | 9.3 TS1M2 | |
| Solaris for x64 | 5.2 | | 9.3 TS1M2 | |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.
In Loop Transform properties, add this code in pre-code section :
data work.loop_Job_status
(keep = etls_handleName etls_machineId etls_startTime etls_endTime etls_status
etls_jobRC JOB_NM
);
attrib etls_handleName length = $32
label = 'Name of handle to remote session';
attrib etls_machineId length = $32
label = 'Name of machine executing the task';
attrib etls_startTime length = 8
format = DATETIME.
informat = DATETIME.
label = 'Start time of task';
attrib etls_endTime length = 8
format = DATETIME.
informat = DATETIME.
label = 'End time of task';
attrib etls_status length = $32
label = 'Current status of task';
attrib etls_jobRC length = 8
label = 'Return code of task';
attrib JOB_NM length = $40;
run;
Master Loop jobs fails when run in sequence instead of parallel.
| Type: | Problem Note |
| Priority: | medium |
| Date Modified: | 2015-06-16 09:18:43 |
| Date Created: | 2015-06-11 00:31:21 |