feat: Enhance FILE_ARCHIVER package to handle empty ODS bucket scenarios with improved statistics initialization
This commit is contained in:
@@ -491,11 +491,11 @@ AS
|
||||
,'||pSourceFileConfigKey||' as A_SOURCE_FILE_CONFIG_KEY
|
||||
,'''||vTableName||''' as TABLE_NAME
|
||||
,count(*) as FILE_COUNT
|
||||
,sum(case when ' || vWhereClause || ' then 1 else 0 end) as OLD_FILE_COUNT
|
||||
,sum (row_count_per_file) as ROW_COUNT
|
||||
,sum(case when ' || vWhereClause || ' then row_count_per_file else 0 end) as OLD_ROW_COUNT
|
||||
,sum(r.bytes) as BYTES
|
||||
,sum(case when ' || vWhereClause || ' then r.bytes else 0 end) as OLD_BYTES
|
||||
,nvl(sum(case when ' || vWhereClause || ' then 1 else 0 end), 0) as OLD_FILE_COUNT
|
||||
,nvl(sum(row_count_per_file), 0) as ROW_COUNT
|
||||
,nvl(sum(case when ' || vWhereClause || ' then row_count_per_file else 0 end), 0) as OLD_ROW_COUNT
|
||||
,nvl(sum(r.bytes), 0) as BYTES
|
||||
,nvl(sum(case when ' || vWhereClause || ' then r.bytes else 0 end), 0) as OLD_BYTES
|
||||
,'||COALESCE(TO_CHAR(vSourceFileConfig.ARCHIVE_THRESHOLD_DAYS), 'NULL')||' as ARCHIVE_THRESHOLD_DAYS
|
||||
,systimestamp as CREATED
|
||||
from tmp_gr t
|
||||
@@ -514,16 +514,16 @@ AS
|
||||
WHEN OTHERS THEN
|
||||
IF SQLCODE = -29913 THEN
|
||||
CT_MRDS.ENV_MANAGER.LOG_PROCESS_EVENT('No files found in ODS bucket (ORA-29913: empty location). Saving zero statistics.', 'INFO', vParameters);
|
||||
vStats.A_SOURCE_FILE_CONFIG_KEY := pSourceFileConfigKey;
|
||||
vStats.TABLE_NAME := vTableName;
|
||||
vStats.FILE_COUNT := 0;
|
||||
vStats.OLD_FILE_COUNT := 0;
|
||||
vStats.ROW_COUNT := 0;
|
||||
vStats.OLD_ROW_COUNT := 0;
|
||||
vStats.BYTES := 0;
|
||||
vStats.OLD_BYTES := 0;
|
||||
vStats.ARCHIVE_THRESHOLD_DAYS := vSourceFileConfig.ARCHIVE_THRESHOLD_DAYS;
|
||||
vStats.CREATED := SYSTIMESTAMP;
|
||||
vStats.A_SOURCE_FILE_CONFIG_KEY := pSourceFileConfigKey;
|
||||
vStats.TABLE_NAME := vTableName;
|
||||
vStats.FILE_COUNT := 0;
|
||||
vStats.OVER_ARCH_THRESOLD_FILE_COUNT := 0;
|
||||
vStats.ROW_COUNT := 0;
|
||||
vStats.OVER_ARCH_THRESOLD_ROW_COUNT := 0;
|
||||
vStats."SIZE" := 0;
|
||||
vStats.OVER_ARCH_THRESOLD_SIZE := 0;
|
||||
vStats.ARCH_THRESHOLD_DAYS := vSourceFileConfig.ARCHIVE_THRESHOLD_DAYS;
|
||||
vStats.CREATED := SYSTIMESTAMP;
|
||||
ELSE
|
||||
RAISE;
|
||||
END IF;
|
||||
|
||||
Reference in New Issue
Block a user