Troubleshooting corrupt Mainframe Files (KBA10853)
KBA
KBA#At a Glance
Summary | This article describes how to troubleshoot corrupt masked files in mainframe masking jobs. | |
---|---|---|
Applies to | This applies to Mainframe File Masking only (all Delphix versions). | |
Resolution | Review the File Format (Copybook) on the Continuous Compliance Engine and update if needed. | |
More info | More useful info:
Databases and supported features:
|
Issue
When Mainframe files are corrupted, it is likely caused by misaligned File-Formats (Copybooks).
Below is an example of this and how to fix the issue.
Source Data
The example here is very small and has been created to visualize what happens.
- The sample file has 5 records and each row is 18 characters long.
- The value C1 (segment 11-12) is to be redacted with '--'.
123456789012345678 ------------------ ABC01-A1B1C1D1E1F1 ABC02-A1B1C1D1E1F1 ABC03-A1B1C1D1E1F1 ABC04-A1B1C1D1E1F1 ABC05-A1B1C1D1E1F1
Masking
The masking engine will read the File based on the File Format (Copybook) configured.
- If it does not match and is too short or too long, the data will shift.
Example: segments 11 - 12 are masked with '-'.
Too short | Correct | Too long | |
I N P U T |
12345678901234567 ----------------- REC01-A1B1C1D1E1F 1ABC02-A1B1C1D1E1 F1ABC03-A1B1C1D1E 1F1ABC04-A1B1C1D1 E1F1ABC05-A1B1C1D 1E1F1 |
123456789012345678 ------------------ ABC01-A1B1C1D1E1F1 ABC02-A1B1C1D1E1F1 ABC03-A1B1C1D1E1F1 ABC04-A1B1C1D1E1F1 ABC05-A1B1C1D1E1F1 |
1234567890123456789 ------------------- ABC01-A1B1C1D1E1F1A BC02-A1B1C1D1E1F1AB C03-A1B1C1D1E1F1ABC 04-A1B1C1D1E1F1ABC0 5-A1B1C1D1E1F1 |
M A S K E D |
12345678901234567 ----------------- REC01-A1B1--D1E1F 1ABC02-A1B--1D1E1 F1ABC03-A1--C1D1E 1F1ABC04-A--1C1D1 E1F1ABC05---B1C1D 1E1F1.....--..... |
123456789012345678 ------------------ ABC01-A1B1--D1E1F1 ABC02-A1B1--D1E1F1 ABC03-A1B1--D1E1F1 ABC04-A1B1--D1E1F1 ABC05-A1B1--D1E1F1 |
1234567890123456789 ------------------- ABC01-A1B1--D1E1F1A BC02-A1B1C--1E1F1AB C03-A1B1C1--E1F1ABC 04-A1B1C1D--1F1ABC0 5-A1B1C1D1--F1..... |
Masked Data
When the data is read back into the Mainframe with the correct Copybook configuration. The data will be corrupt.
Too short (shift left) | Correct | Too long (shift right) |
123456789012345678 ------------------ REC01-A1B1--D1E1F1 ABC02-A1B--1D1E1F1 ABC03-A1--C1D1E1F1 ABC04-A--1C1D1E1F1 ABC05---B1C1D1E1F1 .....--..... |
123456789012345678 ------------------ ABC001-A1-xx-C1-D1 ABC002-A1-xx-C1-D1 ABC003-A1-xx-C1-D1 ABC004-A1-xx-C1-D1 ABC005-A1-xx-C1-D1 |
123456789012345678 ------------------ ABC01-A1B1--D1E1F1 ABC02-A1B1C--1E1F1 ABC03-A1B1C1--E1F1 ABC04-A1B1C1D--1F1 ABC05-A1B1C1D1--F1 .... |
Applicable Delphix Versions
- Click here to view the versions of the Delphix engine to which this article applies
-
Date Release Jan 25, 2024 19.0.0.0 Dec 20, 2023 | Jan 10, 2024 18.0.0.0 | 18.0.0.1 Nov 21, 2023 17.0.0.0 Oct 18, 2023 16.0.0.0 Sep 21, 2023 15.0.0.0 Aug 24, 2023 14.0.0.0 Jul 24, 2023 13.0.0.0 Jun 21, 2023 12.0.0.0 May 25, 2023 11.0.0.0 Apr 13, 2023 10.0.0.0 | 10.0.0.1 Mar 13, 2023 | Mar 20, 2023 9.0.0.0 | 9.0.0.1 Feb 13, 2023 8.0.0.0 Jan 12, 2023 7.0.0.0 Releases Prior to 2023 Major Release All Sub Releases 6.0 6.0.0.0, 6.0.1.0, 6.0.1.1, 6.0.2.0, 6.0.2.1, 6.0.3.0, 6.0.3.1, 6.0.4.0, 6.0.4.1, 6.0.4.2, 6.0.5.0, 6.0.6.0, 6.0.6.1, 6.0.7.0, 6.0.8.0, 6.0.8.1, 6.0.9.0, 6.0.10.0, 6.0.10.1, 6.0.11.0, 6.0.12.0, 6.0.12.1, 6.0.13.0, 6.0.13.1, 6.0.14.0, 6.0.15.0, 6.0.16.0, 6.0.17.0, 6.0.17.1, 6.0.17.2
5.3
5.3.0.0, 5.3.0.1, 5.3.0.2, 5.3.0.3, 5.3.1.0, 5.3.1.1, 5.3.1.2, 5.3.2.0, 5.3.3.0, 5.3.3.1, 5.3.4.0, 5.3.5.0, 5.3.6.0, 5.3.7.0, 5.3.7.1, 5.3.8.0, 5.3.8.1, 5.3.9.0 5.2
5.2.2.0, 5.2.2.1, 5.2.3.0, 5.2.4.0, 5.2.5.0, 5.2.5.1, 5.2.6.0, 5.2.6.1
5.1
5.1.0.0, 5.1.1.0, 5.1.2.0, 5.1.3.0, 5.1.4.0, 5.1.5.0, 5.1.5.1, 5.1.6.0, 5.1.7.0, 5.1.8.0, 5.1.8.1, 5.1.9.0, 5.1.10.0
5.0
5.0.1.0, 5.0.1.1, 5.0.2.0, 5.0.2.1, 5.0.2.2, 5.0.2.3, 5.0.3.0, 5.0.3.1, 5.0.4.0, 5.0.4.1, 5.0.5.0, 5.0.5.1, 5.0.5.2, 5.0.5.3, 5.0.5.4
Resolution
To fix this problem, the File Format (Copybook) needs to be updated on the Continuous Compliance Engine.
If the data on the Mainframe:
- Shifts to the left, the Copybook on the Continuous Compliance Engine is too short.
- Shifts to the right, the Copybook on the Continuous Compliance Engine is too long.
It can also be that the data is variable and the masked value is longer or shorter than the input.
Troubleshooting
The copybook size can be identified from the support bundle.
A feature request has been opened to enhance the UI to show this information (IDEA-3578).