pentaho/pentaho-kettle · error · KettleException
RegexEvalMeta.Exception.UnexpectedErrorInReadingStepInfo
Error message
RegexEvalMeta.Exception.UnexpectedErrorInReadingStepInfo
What it means
RegexEvalMeta's repository constructor (loadStepFromRepository path) reads per-field step attributes from the repository; any exception there is wrapped in a KettleException 'RegexEvalMeta.Exception.UnexpectedErrorInReadingStepInfo'. It means the step's stored attributes could not be read from the repository.
Solutions
- Verify the repository (database) connection is working and retry loading the transformation.
- Check the KETTLE_STEP_ATTRIBUTES table rows for the RegexEval step id_step are intact.
- Re-save the transformation from Spoon to rewrite the step attributes.
- Inspect the chained cause for the actual repository/SQL error.
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Loading a transformation whose RegexEval step metadata is read from a repository (readRep path): repository connection failures, missing id_step attributes, or invalid stored trim_type values cause the catch to fire.
Common situations: Repository database temporarily unavailable; transformation rows partially deleted; repository schema mismatch after an upgrade.
Understand the failure class
Background: Database query failed: Internal Server Error 500s wrapping SQL, Prisma, and connection failures — what to check first — this error's family across 16 libraries.
Related errors
- FuzzyMatchMeta.Exception.UnexpecteErrorReadingStepInfoFromRe…
- GetTableNamesMeta.Exception.UnableToSaveStepInfo
- GPBulkLoaderMeta.Exception.UnexpectedErrorReadingStepInfoFro…
- GPBulkLoaderMeta.Exception.UnexpectedErrorReadingStepInfoFromRepository
- GPBulkLoaderMeta.Exception.UnableToSaveStepInfoToRepository
AI-assisted analysis of pentaho/pentaho-kettle@f3058517a1 (2026-09-13).
Data as JSON: /api/errors/b710eaab0bad76d3.
Report an issue: GitHub.
Appendix: source
Thrown at engine/src/main/java/org/pentaho/di/trans/steps/regexeval/RegexEvalMeta.java:562
allocate( nrfields );
for ( int i = 0; i < nrfields; i++ ) {
fieldName[i] = rep.getStepAttributeString( id_step, i, "field_name" );
fieldType[i] = ValueMetaFactory.getIdForValueMeta( rep.getStepAttributeString( id_step, i, "field_type" ) );
fieldFormat[i] = rep.getStepAttributeString( id_step, i, "field_format" );
fieldGroup[i] = rep.getStepAttributeString( id_step, i, "field_group" );
fieldDecimal[i] = rep.getStepAttributeString( id_step, i, "field_decimal" );
fieldLength[i] = (int) rep.getStepAttributeInteger( id_step, i, "field_length" );
fieldPrecision[i] = (int) rep.getStepAttributeInteger( id_step, i, "field_precision" );
fieldNullIf[i] = rep.getStepAttributeString( id_step, i, "field_nullif" );
fieldIfNull[i] = rep.getStepAttributeString( id_step, i, "field_ifnull" );
fieldCurrency[i] = rep.getStepAttributeString( id_step, i, "field_currency" );
fieldTrimType[i] =
ValueMetaString.getTrimTypeByCode( rep.getStepAttributeString( id_step, i, "field_trimtype" ) );
}
} catch ( Exception e ) {
throw new KettleException( BaseMessages.getString(
PKG, "RegexEvalMeta.Exception.UnexpectedErrorInReadingStepInfo" ), e );
}
}
public void saveRep( Repository rep, IMetaStore metaStore, ObjectId id_transformation, ObjectId id_step ) throws KettleException {
try {
rep.saveStepAttribute( id_transformation, id_step, "script", script );
for ( int i = 0; i < fieldName.length; i++ ) {
if ( fieldName[i] != null && fieldName[i].length() != 0 ) {
rep.saveStepAttribute( id_transformation, id_step, i, "field_name", fieldName[i] );
rep
.saveStepAttribute( id_transformation, id_step, i, "field_type",
ValueMetaFactory.getValueMetaName( fieldType[i] ) );
rep.saveStepAttribute( id_transformation, id_step, i, "field_format", fieldFormat[i] );
rep.saveStepAttribute( id_transformation, id_step, i, "field_group", fieldGroup[i] );
rep.saveStepAttribute( id_transformation, id_step, i, "field_decimal", fieldDecimal[i] );
rep.saveStepAttribute( id_transformation, id_step, i, "field_length", fieldLength[i] );
rep.saveStepAttribute( id_transformation, id_step, i, "field_precision", fieldPrecision[i] );View on GitHub (pinned to f3058517a1)