FDM Parquet Masking Fails with NullPointerException when using HASHLOV1
search cancel

FDM Parquet Masking Fails with NullPointerException when using HASHLOV1

book

Article ID: 438055

calendar_today

Updated On:

Products

CA Test Data Manager (Data Finder / Grid Tools)

Issue/Introduction

When performing Data Masking on Parquet files using Fast Data Masker (FDM) version 5.0.1.0 and the HASHLOV1 function, the masking job fails with a java.lang.NullPointerException even if the seedlist contains no null values.

Error Message:
ERROR - main - java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "com.ca.fdm.database.JDBCDatabaseAccess.getConnection()" is null 
at com.grid_tools.products.datamasker.seedlist.restricted_values.JDBCRestrictedValueLoader.loadRestrictedValues(JDBCRestrictedValueLoader.java:84)
at com.grid_tools.products.datamasker.masking.dbmasking.DBMasker.writeValRandlovs(DBMasker.java:1687)
at com.grid_tools.products.datamasker.masking.dbmasking.DBMasker.doDBMasking(DBMasker.java:190)
at com.grid_tools.products.datamasker.Datamasker.main(Datamasker.java:1356)

Environment

  • Product: CA Test Data Manager (TDM)
  • Component: Fast Data Masker (FDM)
  • Version: 5.0.1.0
  • File Type: Parquet
  • Function: HASHLOV1

Cause

The HASHLOV1 masking function is not currently supported for Parquet file masking.

The error occurs because HASHLOV1 attempts to initialize a database connection through the JDBCDatabaseAccess layer to handle restricted value lookups. Since Parquet file masking jobs operate in a file-system context rather than a direct SQL database connection, getConnection() returns null, leading to the NullPointerException when the application attempts to prepare a SQL statement.

Resolution

As HASHLOV1 support is not yet implemented for Parquet files, use the standard HASHLOV function as a workaround.

  1. Open your masking configuration.
  2. Locate the column currently using the HASHLOV1 function.
  3. Change the masking function from HASHLOV1 to HASHLOV, and modify the necessary parameters as the required parameters for HASHLOV are different.
  4. Re-run the masking job.

 

Additional Information

Support for HASHLOV1 in Parquet file masking has been requested as a future product enhancement.