Issue

In some cases, trying to deploy a model or to integrate data in the MDM, can fail with below error:
image


Cause

It is due to the fact that Semarchy is doing data consistency check to ensure the execution engine's good health.

And for that, it scans the MTA_INTEG_LOAD and MTA_INTEG_BATCH tables to find which job will be executed.


There, it expects only those values for the STATUS field:

  • For the MTA_INTEG_LOAD table, expected values are: 'RUNNING', 'FINISHED', 'CANCELED'.
  • For the MTA_INTEG_BATCH table, expected values are: 'SCHEDULED', 'PROCESSING', 'PENDING', 'RUNNING', 'SUSPENDED', 'STOPPED', 'WARNING', 'ERROR',  'DONE'.

If another value than the ones listed above is present in one of those tables, then it means that someone manually altered it, leading to such error.


/!\ Please note, that you are NOT supposed to alter any records in the repository tables. Thus it is your responsibility to handle its correction.


Solution

#1- Identify unwanted status:
  • For MTA_INTEG_LOAD:
select distinct STATUS from MTA_INTEG_LOAD;
  • For MTA_INTEG_BATCH:
select distinct STATUS from MTA_INTEG_BATCH;


#2- Update any STATUS that is not listed in above values:
  • Example for MTA_INTEG_LOAD:
update MTA_INTEG_LOAD
set STATUS = 'ERROR'
where STATUS in ('xxx','yyy','zzz');
  • Example for MTA_INTEG_BATCH:
update MTA_INTEG_BATCH
set STATUS = 'ERROR'
where STATUS in ('xxx','yyy','zzz');


Of course, replace values 'xxx', 'yyy' and 'zzz' by your unwanted status values.