Skip to main content

Respond to a failed connector job

When a connector job fails or stalls, the job output almost always tells you what happened. Read it first, then use the tables below to act or route it to the right team.

Routing rule of thumb: problems with the job's settings go to the Builder; problems with connections, agents, drivers, or the relay go to the Administrator.

What this solves

A connector job fails or stalls mid-run, and it's not obvious whether the fix belongs to the operator, the builder, or the administrator. It bounces between teams while the run waits.

Commands and scripts (Run Command, Run Script)​

Output / symptomMeaningWhat to do
"could not start" / command not foundThe program or interpreter isn't on the agentBuilder confirms the command; Administrator confirms it's installed on the agent.
Script won't start (PowerShell/Python)The interpreter isn't installed on the agentAdministrator installs the interpreter (e.g. pwsh, python3).
Failed with a non-zero exit codeThe command/script reported an errorBuilder checks the command and whether Fail on Error, or an exit criterion, should apply.
Failed, and the Termination text names an exit criterion or an output parsing ruleThe job's configured failure criteria decided the outcome — not the command's exit code on its ownRead the Termination text: it names the rule that fired and the code it set. Builder adjusts the criteria (Run Command / Run Script).
Finished OK even though the output looks wrongExit criteria are configured and the code resolved to finished OK against themBuilder reviews both halves: the conditions, and the Exit Criteria Result that says whether a match means fail or finish OK. A code matching nothing takes the opposite of that setting, so an over-narrow set lets real failures through.
A legacy job finished OK but the agent's own log says it failedIts criteria table was evaluated by OpCon Continuum rather than by the agent, so the agent was given the platform default and reached the opposite conclusionRead the Exit criteria evaluated entry in the job's history, which records Finished OK (Exit Criteria) Return Code='N' and names the layer that decided. On a Windows, UNIX/Linux or SQL job the Termination text holds the exit code itself, not that line. Nothing is wrong.
A legacy job never starts, and the dispatch is refused on its exit criteriaThe relay serving that machine predates Exit Criteria Result, range conditions, or tables of more than five rows, and refuses to send a table it can't representAdministrator upgrades the relay. As a stopgap, Builder rewrites the table as up to five plain conditions with Exit Criteria Result Fail.
Ended after one hour, exit code 128The command ran past the fixed one-hour limit every Universal Agent job has, and was stoppedThe limit can't be raised. Builder splits the work or makes the command finish within the hour.

SQL Database jobs​

SQL Database Executor jobs do not run in this build. Every one — MS SQL Script, MS SQL Job, MS SQL DTExec, MySQL Script, Oracle Script and Other DB Script on a Universal Agent — fails before it reaches the database:

Output / symptomMeaningWhat to do
External plugin sql-executor requires pluginDownloadUrl and pluginChecksumThe agent was not given the SQL Database Executor connectorNothing in the job or the connection changes this. To run SQL Server scripts today, use the SQL LSAM MS SQL Script job type on a SQL LSAM machine.

Internal jobs (Null Job, Workflow Container)​

Output / symptomMeaningWhat to do
Null Job sits waitingWaiting on its dependencies (by design), or on holdOperator checks predecessors; release if intentionally on hold.
Workflow Container stays running a long timeThe embedded (nested) workflow hasn't finishedOpen the nested workflow instance and troubleshoot it there.
Container failed: "does not exist" / "circular" / "depth exceeded"The embedded workflow reference is wrong, loops, or nests too deepBuilder fixes the workflow reference.
The build succeeded, but a warning says a Workflow Container has no sub-schedule to runThe container couldn't be expanded during the build — the parent still built, by designRead the reason in the warning (or hover the warning icon on the container job), fix what it names — usually the embedded workflow isn't deployed for that date — then rebuild with overwrite.

Legacy LSAM commands​

Output / symptomMeaningWhat to do
"No agent available"The relay is down or the LSAM machine is unreachableAdministrator checks the relay and LSAM connectivity.
Legacy job rejected at dispatch, naming a missing login name, password, user, or groupThe batch user connection the job runs as is incompleteAdministrator completes the connection — see Manage connections.
Legacy job rejected at dispatch: attached connection is not a … credentialThe job's batch user is of the wrong platform's typeBuilder re-picks the account in the job's Batch User field.
UNIX job rejected at dispatch, naming a missing user or groupA UNIX job must name a batch user, and none is attachedBuilder attaches a UNIX Batch User connection.
Marked failed though it ranAn exit-criteria condition matchedBuilder confirms the failure conditions match the program's real codes.
A UNIX job ends with exit 127 and the log shows quot: not found (or amp, lt, gt, apos)An older relay converted the quotes and ampersands in the command into their XML forms, and the UNIX agent ran that text literallyHave the relay upgraded — current relays send UNIX values unaltered. Until then, move the command into a script on the machine and run that.
A UNIX job is rejected at dispatch naming a field code, for </F> or <F I=A UNIX value can't carry either sequence — the agent would read it as part of the message rather than as the valueBuilder removes it; put those characters in a script on the machine instead.
An MS SQL Script job fails reaching the database, after dispatching cleanlyEncrypt Connection is on (the default) and SQL Server has no certificate the machine trustsAdministrator installs a trusted certificate, or the Builder turns Encrypt Connection off.
An MS SQL Script job is rejected at dispatch naming its scriptNeither SQL Script Statements nor Script File Path is filled in, or both areBuilder supplies exactly one of the two.
An MS SQL Script job's own result is ignoredUse Exit Code From Script Result has no effect when the script comes from Script File PathBuilder moves the script inline, or judges the outcome from the reported exit code.
Every job on one legacy agent sits Running with no completion, and the agent still reads as reachableThe agent stopped answering without disconnecting — a paused or frozen host, or a NAT port-forward holding the socket open. The relay now declares it down after 90 seconds of an unanswered acknowledgement; on an older relay the wait was about two and a half hoursConfirm the machine is actually up, and have the relay upgraded if it is not declaring the agent down. See When a legacy agent stops answering.
A UNIX - File Arrival job is rejected at dispatch naming the file nameThe path holds a character the relay refuses anywhere — ``` ` $ " \ ;& < > ( ) ' ``` — or a space in its directory part, or is over 255 characters. Classic accepts these; Continuum does not, on any agent, because an older UNIX agent hands the name to a shell when it searches
A UNIX - File Arrival job fails with exit code 2The directory being watched does not exist on the agent. Only the file-name part takes wildcards; the directory part is literal and has to be there alreadyCreate the directory on the machine, or correct the path.
A File Arrival job watches a day either side of the one you authoredAn out-of-date relay sends its own UTC date as the job's schedule date, so the window shifts for agents west of UTCHave the relay upgraded — see The schedule date a legacy job is sent with.

File waits​

For a Wait for File job that's stuck or timed out, see Respond to a stuck or failed Wait for File job. The job output names the exact criterion it's waiting on.

When you escalate​

Include the job output, the job type, and (for database or LSAM jobs) the connection or machine name involved, but never credentials. Note whether the same operation works when run directly (in a terminal, a database client, or on the LSAM machine).

Related topics