Merge branch 'main' of https://git.itbi.mywire.org/admin/mars
This commit is contained in:
@@ -22,6 +22,8 @@ DECLARE
|
||||
vFailedConfigs NUMBER := 0;
|
||||
vTableNotFound NUMBER := 0;
|
||||
vSkippedConfigs NUMBER := 0;
|
||||
vEmptyTables NUMBER := 0;
|
||||
vHasData NUMBER := 0;
|
||||
vTableName VARCHAR2(200);
|
||||
vSQL VARCHAR2(32767);
|
||||
vRecordsToUpdate NUMBER := 0;
|
||||
@@ -84,6 +86,28 @@ BEGIN
|
||||
CONTINUE;
|
||||
END IF;
|
||||
|
||||
-- Pre-check: verify ODS table has accessible data (empty external table throws ORA-29913/KUP-05002)
|
||||
vHasData := 0;
|
||||
BEGIN
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(*) FROM (SELECT 1 FROM ' || vTableName || ' t WHERE ROWNUM = 1)'
|
||||
INTO vHasData;
|
||||
EXCEPTION
|
||||
WHEN OTHERS THEN
|
||||
IF SQLCODE = -29913 OR INSTR(SQLERRM, 'KUP-05002') > 0 THEN
|
||||
NULL; -- vHasData stays 0
|
||||
ELSE
|
||||
RAISE;
|
||||
END IF;
|
||||
END;
|
||||
|
||||
IF vHasData = 0 THEN
|
||||
vEmptyTables := vEmptyTables + 1;
|
||||
DBMS_OUTPUT.PUT_LINE('SKIP: Config ' || config_rec.A_SOURCE_FILE_CONFIG_KEY ||
|
||||
' (' || config_rec.A_SOURCE_KEY || '/' || config_rec.SOURCE_FILE_ID || '/' || config_rec.TABLE_ID ||
|
||||
') - ODS table has no files at storage location (empty): ' || vTableName);
|
||||
CONTINUE;
|
||||
END IF;
|
||||
|
||||
DBMS_OUTPUT.PUT_LINE('Processing config ' || config_rec.A_SOURCE_FILE_CONFIG_KEY ||
|
||||
' (' || config_rec.A_SOURCE_KEY || '/' || config_rec.SOURCE_FILE_ID || '/' || config_rec.TABLE_ID || ')...');
|
||||
|
||||
@@ -134,6 +158,7 @@ BEGIN
|
||||
DBMS_OUTPUT.PUT_LINE(' Total records updated: ' || vUpdatedTotal);
|
||||
DBMS_OUTPUT.PUT_LINE(' Configurations skipped (no NULL records): ' || vSkippedConfigs);
|
||||
DBMS_OUTPUT.PUT_LINE(' Configurations skipped (ODS table not found): ' || vTableNotFound);
|
||||
DBMS_OUTPUT.PUT_LINE(' Configurations skipped (ODS table empty - no files at location): ' || vEmptyTables);
|
||||
DBMS_OUTPUT.PUT_LINE(' Configurations failed (unexpected errors): ' || vFailedConfigs);
|
||||
|
||||
-- Check remaining NULL records - targeted statuses only
|
||||
|
||||
@@ -63,7 +63,7 @@ PROMPT
|
||||
PROMPT ============================================================================
|
||||
PROMPT STEP 2: Diagnose workflow key status
|
||||
PROMPT ============================================================================
|
||||
@@diagnose_workflow_key_status.sql
|
||||
@@02_MARS_1409_POSTHOOK_diagnose_workflow_key_status.sql
|
||||
|
||||
PROMPT
|
||||
PROMPT ============================================================================
|
||||
|
||||
Reference in New Issue
Block a user