An Autosys job fails immediately upon submission with a status of FAILURE and a sub-status/status of Invalid AFM.
The defaultlog_agent.log on the Workload Automation Agent contains the following stack trace:
RunnerPlugin.runner Internal Thread.CybWOBRunDotHandler.processWob[:580] - cybermation.library.afm.CybInvalidAFMException: Unprintable character at cybermation.library.afm.CybAFMTokenizer.d(CybAFMTokenizer.java:748) at cybermation.library.afm.CybAFMTokenizer.parseOld(CybAFMTokenizer.java:1174) at cybermation.library.afm.CybAFMTokenizer.<init>(CybAFMTokenizer.java:168) at cybermation.library.afm.CybAFMParser.getTokenizer(CybAFMParser.java:589) at cybermation.library.afm.CybAFMParser.lookupIgnoreCase(CybAFMParser.java:426) at cybermation.plugins.runner.wobhandler.CybWOBRunDotHandler.processWob(CybWOBRunDotHandler.java:460) at cybermation.plugins.library.base.CybRMIExternalPluginBaseManager.processWob(CybRMIExternalPluginBaseManager.java:627) at cybermation.plugins.library.base.CybRMIExternalPluginBaseManager.run(CybRMIExternalPluginBaseManager.java:460) at java.lang.Thread.run(Thread.java:750)
Workload Automation AE (Autosys)
Workload Automation Agent
A Global Variable used in the job definition (e.g., in the command or args fields) contains hidden, unprintable characters or trailing non-breaking spaces (such as U+A0). When the Scheduler resolves the variable to construct the Automated Framework Message (AFM), these characters malform the AFM syntax. The Agent rejects the message as an Invalid AFM because it cannot parse the unprintable characters.
Follow these steps to identify and clean the affected Global Variable:
autorep -G ALL -v VARIABLE_NAMEsendevent -E SET_GLOBAL -G "VARIABLE_NAME=VALUE"If the Global Variable is set by an automated process, verify the source data to prevent future recurrence.
To speak with a customer representative or a Support Engineer see Contact Support. Scroll to the bottom of the page and click on the respective region.