{"record":{"id":"936337035885adb7","repo":"pentaho/pentaho-kettle","slug":"jobentrycopymoveresultfilenames-cannotloadfromrep","errorCode":null,"errorMessage":"JobEntryCopyMoveResultFilenames.CanNotLoadFromRep","messagePattern":"JobEntryCopyMoveResultFilenames\\.CanNotLoadFromRep","errorType":"exception","errorClass":"KettleXMLException","httpStatus":null,"severity":"error","filePath":"engine/src/main/java/org/pentaho/di/job/entries/copymoveresultfilenames/JobEntryCopyMoveResultFilenames.java","lineNumber":213,"sourceCode":"      wildcard = rep.getJobEntryAttributeString( id_jobentry, \"wildcard\" );\n      wildcardexclude = rep.getJobEntryAttributeString( id_jobentry, \"wildcardexclude\" );\n      destination_folder = rep.getJobEntryAttributeString( id_jobentry, \"destination_folder\" );\n      nr_errors_less_than = rep.getJobEntryAttributeString( id_jobentry, \"nr_errors_less_than\" );\n      success_condition = rep.getJobEntryAttributeString( id_jobentry, \"success_condition\" );\n      add_date = rep.getJobEntryAttributeBoolean( id_jobentry, \"add_date\" );\n      add_time = rep.getJobEntryAttributeBoolean( id_jobentry, \"add_time\" );\n      SpecifyFormat = rep.getJobEntryAttributeBoolean( id_jobentry, \"SpecifyFormat\" );\n      date_time_format = rep.getJobEntryAttributeString( id_jobentry, \"date_time_format\" );\n      AddDateBeforeExtension = rep.getJobEntryAttributeBoolean( id_jobentry, \"AddDateBeforeExtension\" );\n      action = rep.getJobEntryAttributeString( id_jobentry, \"action\" );\n\n      OverwriteFile = rep.getJobEntryAttributeBoolean( id_jobentry, \"OverwriteFile\" );\n      CreateDestinationFolder = rep.getJobEntryAttributeBoolean( id_jobentry, \"CreateDestinationFolder\" );\n      RemovedSourceFilename = rep.getJobEntryAttributeBoolean( id_jobentry, \"RemovedSourceFilename\" );\n      AddDestinationFilename = rep.getJobEntryAttributeBoolean( id_jobentry, \"AddDestinationFilename\" );\n\n    } catch ( KettleException dbe ) {\n      throw new KettleXMLException( BaseMessages.getString(\n        PKG, \"JobEntryCopyMoveResultFilenames.CanNotLoadFromRep\", \"\" + id_jobentry, dbe.getMessage() ) );\n    }\n  }\n\n  public void saveRep( Repository rep, IMetaStore metaStore, ObjectId id_job ) throws KettleException {\n    try {\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"foldername\", foldername );\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"specify_wildcard\", specifywildcard );\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"wildcard\", wildcard );\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"wildcardexclude\", wildcardexclude );\n\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"destination_folder\", destination_folder );\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"nr_errors_less_than\", nr_errors_less_than );\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"success_condition\", success_condition );\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"add_date\", add_date );\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"add_time\", add_time );\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"SpecifyFormat\", SpecifyFormat );\n      rep.saveJobEntryAttribute( id_job, getObjectId(), \"date_time_format\", date_time_format );","sourceCodeStart":195,"sourceCodeEnd":231,"githubUrl":"https://github.com/pentaho/pentaho-kettle/blob/f3058517a153da500bf4551f46d79b91bf8ec552/engine/src/main/java/org/pentaho/di/job/entries/copymoveresultfilenames/JobEntryCopyMoveResultFilenames.java#L195-L231","documentation":"JobEntryCopyMoveResultFilenames.loadRep throws this KettleXMLException (notably wrapping a KettleException) when reading the entry's boolean/string attributes from the repository fails. The message includes id_jobentry and the database error message, telling the developer the entry could not be loaded from repository tables.","triggerScenarios":"Calling loadRep when the repository throws KettleException while fetching attributes like 'SpecifyWildcard', 'Wildcard', 'OverwriteFile', 'AddDestinationFilename' for the given id_jobentry — e.g. connection failure or broken repository schema.","commonSituations":"Repository DB unreachable during job open; schema mismatch after upgrade; rows for this job entry missing because the entry was partially saved previously.","solutions":["Verify repository database connectivity and retry opening the job.","Run repository schema repair/upgrade so R_JOBENTRY_ATTRIBUTE matches the expected version.","Re-save the job entry in Spoon to restore missing attribute rows.","Read dbe.getMessage() included in the exception to identify the underlying SQL failure."],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":"if (id_jobentry == null) throw new IllegalArgumentException(\"id_jobentry required for loadRep\");\nif (!rep.isConnected() && !rep.connect()) throw new IllegalStateException(\"Repository unreachable\");","typeGuard":null,"tryCatchPattern":"try {\n  jobEntry.loadRep(rep, metaStore, id_jobentry, databases, slaveServers);\n} catch (KettleXMLException e) {\n  logError(\"Repository load failed for id_jobentry=\" + id_jobentry + \": \" + e.getMessage(), e);\n  // reconnect repository and retry once, then surface to user\n}","preventionTips":["Verify DB connectivity before opening repository jobs","Keep repository schema upgraded to the Pentaho DI version","Watch for partially saved entries after prior save failures","Log the nested dbe message included in this exception"],"tags":["pdi","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"}