{"record":{"id":"aa158a6fa3d46ed9","repo":"pentaho/pentaho-kettle","slug":"unable-to-load-job-entry-of-type-trans-from-the-repository","errorCode":null,"errorMessage":"Unable to load job entry of type 'trans' from the repository for id_jobentry=","messagePattern":"Unable to load job entry of type 'trans' from the repository for id_jobentry=","errorType":"exception","errorClass":"KettleException","httpStatus":null,"severity":"error","filePath":"engine/src/main/java/org/pentaho/di/job/entries/trans/JobEntryTrans.java","lineNumber":527,"sourceCode":"      for ( int a = 0; a < argnr; a++ ) {\n        arguments[ a ] = rep.getJobEntryAttributeString( id_jobentry, a, \"argument\" );\n      }\n\n      // How many arguments?\n      int parameternr = rep.countNrJobEntryAttributes( id_jobentry, \"parameter_name\" );\n      allocateParams( parameternr );\n\n      // Read all parameters ...\n      for ( int a = 0; a < parameternr; a++ ) {\n        parameters[ a ] = rep.getJobEntryAttributeString( id_jobentry, a, \"parameter_name\" );\n        parameterFieldNames[ a ] = rep.getJobEntryAttributeString( id_jobentry, a, \"parameter_stream_name\" );\n        parameterValues[ a ] = rep.getJobEntryAttributeString( id_jobentry, a, \"parameter_value\" );\n      }\n\n      passingAllParameters = rep.getJobEntryAttributeBoolean( id_jobentry, \"pass_all_parameters\", true );\n\n    } catch ( KettleDatabaseException dbe ) {\n      throw new KettleException( \"Unable to load job entry of type 'trans' from the repository for id_jobentry=\"\n        + id_jobentry, dbe );\n    }\n  }\n\n  // Save the attributes of this job entry\n  //\n  @Override\n  public void saveRep( Repository rep, IMetaStore metaStore, ObjectId id_job ) throws KettleException {\n    try {\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"specification_method\", specificationMethod == null\n        ? null : specificationMethod.getCode() );\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"trans_object_id\", transObjectId == null\n        ? null : transObjectId.toString() );\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"name\", getTransname() );\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"dir_path\", getDirectory() != null ? getDirectory() : \"\" );\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"file_name\", filename );\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"arg_from_previous\", argFromPrevious );\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"params_from_previous\", paramsFromPrevious );","sourceCodeStart":509,"sourceCodeEnd":545,"githubUrl":"https://github.com/pentaho/pentaho-kettle/blob/f3058517a153da500bf4551f46d79b91bf8ec552/engine/src/main/java/org/pentaho/di/job/entries/trans/JobEntryTrans.java#L509-L545","documentation":"Thrown by JobEntryTrans.loadRep when reading a Transformation job entry's attributes from the repository fails with a KettleDatabaseException. It means repository attribute reads for this id_jobentry (transformation name, parameters, pass_all_parameters flag, etc.) failed. The database error is preserved as the cause.","triggerScenarios":"Calling loadRep when the repository connection fails mid-read, the job entry's attribute rows are missing, or the database raises an error while fetching parameters or the 'pass_all_parameters' boolean.","commonSituations":"Repository schema drift after Pentaho upgrades; entries referencing deleted transformation rows; transient DB outages during job load; permission loss on repository tables.","solutions":["Verify repository connectivity and retry loading the job","Confirm R_JOBENTRY_ATTRIBUTE rows exist for the given id_jobentry","Run repository schema repair/upgrade tools to match the runtime version","Check the wrapped KettleDatabaseException cause for the underlying SQL error"],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":"if ( rep == null || !rep.isConnected() ) { throw new IllegalStateException( \"Repository unavailable\" ); }","typeGuard":null,"tryCatchPattern":"try { entry.loadRep( rep, metaStore, id_jobentry, databases, slaveServers ); } catch ( KettleException e ) { log.error( \"Failed loading trans entry \" + id_jobentry, e.getCause() ); throw e; }","preventionTips":["Confirm attribute rows exist for the entry id","Keep repository schema in sync with runtime version","Use SELECT-capable DB credentials","Retry loads on transient DB outages"],"tags":["kettle","repository","database"],"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"}