Files
mars/MARS_Packages/REL02_POST/MARS-1409-POSTHOOK/README.md
Grzegorz Michalski 1385bfb9e7 feat: Implement MARS-1409 post-hook for backfilling A_WORKFLOW_HISTORY_KEY
- Added .gitignore to exclude temporary folders.
- Created SQL script to update existing A_WORKFLOW_HISTORY_KEY in A_SOURCE_FILE_RECEIVED.
- Implemented rollback script to clear backfilled A_WORKFLOW_HISTORY_KEY values.
- Added README.md for installation and usage instructions.
- Developed master installation and rollback scripts for MARS-1409 post-hook.
- Verified installation and rollback processes with detailed checks.
- Updated trigger logic to manage workflow history updates.
- Ensured proper version tracking and verification for related packages.
2026-03-13 08:30:32 +01:00

2.4 KiB

MARS-1409-POSTHOOK: Backfill A_WORKFLOW_HISTORY_KEY for existing records

Overview

Post-hook for MARS-1409. Backfills A_WORKFLOW_HISTORY_KEY in CT_MRDS.A_SOURCE_FILE_RECEIVED for historical records that existed before MARS-1409 was installed.

Matches records by SOURCE_FILE_NAME against file$name in the corresponding ODS table (ODS.<TABLE_ID>_ODS) for each INPUT source configuration.

Contents

File Description
install_mars1409_posthook.sql Master installation script (SPOOL, ACCEPT, quit)
rollback_mars1409_posthook.sql Master rollback script (SPOOL, ACCEPT, quit)
01_MARS_1409_POSTHOOK_update_existing_workflow_keys.sql Backfill UPDATE script
91_MARS_1409_POSTHOOK_rollback_workflow_keys.sql Clear backfilled values
track_package_versions.sql Universal version tracking (no packages changed)
verify_packages_version.sql Universal package verification
README.md This file

Prerequisites

  • MARS-1409 installed (A_WORKFLOW_HISTORY_KEY column must exist in CT_MRDS.A_SOURCE_FILE_RECEIVED)
  • ODS tables populated with ingested data
  • ADMIN user with access to CT_MRDS and ODS schemas

Installation

# Execute as ADMIN user
Get-Content "MARS_Packages/REL02_POST/MARS-1409-POSTHOOK/install_mars1409_posthook.sql" | sql "ADMIN/Cloudpass#34@ggmichalski_high"

Log file created automatically: log/INSTALL_MARS_1409_POSTHOOK_<PDB>_<timestamp>.log

What it does

  • Iterates all INPUT source configurations from CT_MRDS.A_SOURCE_FILE_CONFIG
  • For each config, joins A_SOURCE_FILE_RECEIVED with ODS.<TABLE_ID>_ODS on SOURCE_FILE_NAME = file$name
  • Updates A_WORKFLOW_HISTORY_KEY for records with statuses: VALIDATED, READY_FOR_INGESTION, INGESTED, ARCHIVED, ARCHIVED_AND_TRASHED, ARCHIVED_AND_PURGED
  • Skips configs with no NULL records or missing ODS tables
  • Prints summary with counts per config and overall totals

Rollback

# Execute as ADMIN user
Get-Content "MARS_Packages/REL02_POST/MARS-1409-POSTHOOK/rollback_mars1409_posthook.sql" | sql "ADMIN/Cloudpass#34@ggmichalski_high"

Rollback clears all non-NULL A_WORKFLOW_HISTORY_KEY values from A_SOURCE_FILE_RECEIVED. The trigger installed by MARS-1409 will repopulate new records automatically.

  • MARS-1409: Add A_WORKFLOW_HISTORY_KEY column to A_SOURCE_FILE_RECEIVED (main package)