{"record":{"id":"17a481800b79216e","repo":"pentaho/pentaho-kettle","slug":"accessinputmeta-exception-errorreadingrepository","errorCode":"AccessInputMeta.Exception.ErrorReadingRepository","errorMessage":"AccessInputMeta.Exception.ErrorReadingRepository","messagePattern":"AccessInputMeta\\.Exception\\.ErrorReadingRepository","errorType":"exception","errorClass":"KettleException","httpStatus":null,"severity":"error","filePath":"plugins/ms-access/impl/src/main/java/org/pentaho/di/trans/steps/accessinput/AccessInputMeta.java","lineNumber":1037,"sourceCode":"        field.setGroupSymbol( rep.getStepAttributeString( id_step, i, \"field_group\" ) );\n        field.setLength( (int) rep.getStepAttributeInteger( id_step, i, \"field_length\" ) );\n        field.setPrecision( (int) rep.getStepAttributeInteger( id_step, i, \"field_precision\" ) );\n        field.setTrimType( AccessInputField.getTrimTypeByCode( rep.getStepAttributeString(\n          id_step, i, \"field_trim_type\" ) ) );\n        field.setRepeated( rep.getStepAttributeBoolean( id_step, i, \"field_repeat\" ) );\n\n        inputFields[i] = field;\n      }\n      shortFileFieldName = rep.getStepAttributeString( id_step, \"shortFileFieldName\" );\n      pathFieldName = rep.getStepAttributeString( id_step, \"pathFieldName\" );\n      hiddenFieldName = rep.getStepAttributeString( id_step, \"hiddenFieldName\" );\n      lastModificationTimeFieldName = rep.getStepAttributeString( id_step, \"lastModificationTimeFieldName\" );\n      uriNameFieldName = rep.getStepAttributeString( id_step, \"uriNameFieldName\" );\n      rootUriNameFieldName = rep.getStepAttributeString( id_step, \"rootUriNameFieldName\" );\n      extensionFieldName = rep.getStepAttributeString( id_step, \"extensionFieldName\" );\n      sizeFieldName = rep.getStepAttributeString( id_step, \"sizeFieldName\" );\n    } catch ( Exception e ) {\n      throw new KettleException(\n        BaseMessages.getString( PKG, \"AccessInputMeta.Exception.ErrorReadingRepository\" ), e );\n    }\n  }\n\n  @Override\n  public void saveRep( Repository rep, IMetaStore metaStore, ObjectId id_transformation, ObjectId id_step ) throws KettleException {\n    try {\n      rep.saveStepAttribute( id_transformation, id_step, \"include\", includeFilename );\n      rep.saveStepAttribute( id_transformation, id_step, \"include_field\", filenameField );\n      rep.saveStepAttribute( id_transformation, id_step, \"tablename\", includeTablename );\n      rep.saveStepAttribute( id_transformation, id_step, \"tablename_field\", tablenameField );\n      rep.saveStepAttribute( id_transformation, id_step, \"rownum\", includeRowNumber );\n      rep.saveStepAttribute( id_transformation, id_step, \"isaddresult\", isaddresult );\n      rep.saveStepAttribute( id_transformation, id_step, \"filefield\", filefield );\n      rep.saveStepAttribute( id_transformation, id_step, \"filename_Field\", dynamicFilenameField );\n      rep.saveStepAttribute( id_transformation, id_step, \"rownum_field\", rowNumberField );\n      rep.saveStepAttribute( id_transformation, id_step, \"limit\", rowLimit );\n      rep.saveStepAttribute( id_transformation, id_step, \"table_name\", TableName );","sourceCodeStart":1019,"sourceCodeEnd":1055,"githubUrl":"https://github.com/pentaho/pentaho-kettle/blob/f3058517a153da500bf4551f46d79b91bf8ec552/plugins/ms-access/impl/src/main/java/org/pentaho/di/trans/steps/accessinput/AccessInputMeta.java#L1019-L1055","documentation":"KettleException thrown by AccessInputMeta.readRep when reading the step's attributes from the Pentaho repository fails with any exception. The localized 'Error reading repository' message wraps the underlying error, indicating the Access Input step's stored metadata could not be loaded.","triggerScenarios":"readRep(Repository, IMetaStore, ObjectId id_step, ...) catching Exception: repository DB connection failure, missing/corrupt r_step_attribute rows for id_step, schema mismatch after a version upgrade, or attribute values that fail conversion.","commonSituations":"Repository schema not upgraded after a PDI upgrade; orphaned step rows after partial deletion; repository DB outage or dropped connection during load; corrupted attribute rows from an interrupted save.","solutions":["Check the wrapped cause for the underlying repository/database error and verify repository connectivity.","Confirm the repository schema version matches the PDI version; run the repository upgrade script if needed.","Inspect r_step_attribute rows for the reported id_step for corruption; re-save the transformation to rewrite them.","If rows are unrecoverable, re-create the Access Input step in Spoon and re-save the transformation."],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":"try { meta.readRep( rep, metaStore, id_step, databases ); } catch ( KettleException e ) { logError( \"Repository read failed for step \" + id_step + \": \" + e.getCause(), e ); /* re-create step or repair repository */ }","preventionTips":["Run repository upgrade scripts after every PDI upgrade","Verify repository connectivity before opening transformations","Avoid killing Spoon mid-save, which can leave corrupt attribute rows","Back up the repository database regularly"],"tags":["kettle","repository","database","step-metadata","access-input"],"backgroundTag":"database-query-failed","analyzedSha":"f3058517a153da500bf4551f46d79b91bf8ec552","analyzedAt":"2026-09-13T14:04:16.340Z","contentChangedAt":"2026-09-13T14:04:16.340Z","schemaVersion":2},"datasetVersion":"2026-09-20T23:17:15.980Z"}