pentaho/pentaho-kettle · error · KettleException
Unable to save job entry of type 'SNMPTrap' to the…
Error message
Unable to save job entry of type 'SNMPTrap' to the repository for id_job=
What it means
JobEntrySNMPTrap.saveRep wraps any KettleDatabaseException raised while saving the SNMPTrap entry's attributes to the repository, rethrowing as KettleException with 'Unable to save job entry of type SNMPTrap to the repository for id_job=' plus the id. The job entry's SNMP configuration could not be persisted.
Solutions
- Examine the chained KettleDatabaseException for the root SQL error.
- Reconnect to the repository and retry the save.
- Confirm the DB user has write access to the job attribute tables.
- Upgrade/repair the repository schema if version-mismatched.
Defensive patterns
Strategy: retry
Validate before calling
if (rep == null || !rep.isConnected()) { rep.connect(); } // ensure session before save Try / catch
try {
entry.saveRep(rep, metaStore, idJob);
} catch (KettleException e) {
logger.error("SNMPTrap saveRep failed, cause=" + e.getCause(), e);
// reconnect and retry once
} Prevention
- Reconnect to the repository after long idle periods before saving.
- Confirm DB write privileges and free storage.
- Keep the repository schema current.
- Retry once on transient connection errors.
When it happens
Trigger: Calling saveRep when Repository.saveJobEntryAttribute throws KettleDatabaseException - lost DB connection, permission denied, constraint violation, or storage failure.
Common situations: Saving a job while the repository session expired; read-only DB account; full tablespace/disk; schema not upgraded to current Pentaho version.
Related errors
- AccessInputMeta.Exception.ErrorReadingRepository
- AddSequenceMeta.Exception.UnableToReadStepInfo
- AggregateRowsMeta.Exception.UnexpectedErrorWhileReadingStepInfo
- AnalyticQueryMeta.Exception.UnexpectedErrorInReadingStepInfo…
- AppendMeta.Exception.UnableToSaveStepInfo
AI-assisted analysis of pentaho/pentaho-kettle@f3058517a1 (2026-09-13).
Data as JSON: /api/errors/174e544e5445f5fd.
Report an issue: GitHub.
Appendix: source
Thrown at engine/src/main/java/org/pentaho/di/job/entries/snmptrap/JobEntrySNMPTrap.java:223
}
}
public void saveRep( Repository rep, IMetaStore metaStore, ObjectId id_job ) throws KettleException {
try {
rep.saveJobEntryAttribute( id_job, getObjectId(), "port", port );
rep.saveJobEntryAttribute( id_job, getObjectId(), "servername", serverName );
rep.saveJobEntryAttribute( id_job, getObjectId(), "oid", oid );
rep.saveJobEntryAttribute( id_job, getObjectId(), "message", message );
rep.saveJobEntryAttribute( id_job, getObjectId(), "comstring", comString );
rep.saveJobEntryAttribute( id_job, getObjectId(), "timeout", timeout );
rep.saveJobEntryAttribute( id_job, getObjectId(), "nrretry", nrretry );
rep.saveJobEntryAttribute( id_job, getObjectId(), "targettype", targettype );
rep.saveJobEntryAttribute( id_job, getObjectId(), "user", user );
rep.saveJobEntryAttribute( id_job, getObjectId(), "passphrase", Encr.encryptPasswordIfNotUsingVariables( passphrase ) );
rep.saveJobEntryAttribute( id_job, getObjectId(), "engineid", engineid );
} catch ( KettleDatabaseException dbe ) {
throw new KettleException( "Unable to save job entry of type 'SNMPTrap' to the repository for id_job="
+ id_job, dbe );
}
}
/**
* @return Returns the serverName.
*/
public String getServerName() {
return serverName;
}
/**
* @param serverName
* The serverName to set.
*/
public void setServerName( String serverName ) {
this.serverName = serverName;
}View on GitHub (pinned to f3058517a1)