Troubleshooting
Problem
The APT_OSL_PARAM_ESC_SQUOTE parameter was added to indicate that an escape character should be placed in front of any single quotes found in job parameters so that the single quote would be passed through to the underlying components. If the APT_OSL_PARAM_ESC_SQUOTE parameter is set then for the parameter colname='adam', the single quotes are escaped and sent through the underlying components as \'adam\'. Otherwise, just the string adam is sent. On Parallel Canvas if the job-parameters having single-quoted strings are used with APT_OSL_PARAM_ESC_SQUOTE, there are limitations when the same parameter is used with operators/connectors and plugins.
Symptom
Case -1
Consider a job with plugin stage (E.g. DB2API) and transformer (operator) stages and with job parameter TIMESTAMPVAL with single-quoted string having space within.
For example, TIMESTAMPVAL='2011-10-21 04:43:52.154081'.
If transformer stage uses this job parameter then the following error occurs:
Transformer_32: Unrecognized argument: 04:43:52.154081 [argvcheck/argvcheck.C:3779]
Since '2011-10-21 04:43:52.154081' is not escaped, the string that is passed to transformer stage is 2011-10-21 04:43:52.154081.
This happens because there is a space within the timestamp and the transformer sees these as two arguments and results in an Unrecognized argument error for the part after space.
If the APT_OSL_PARAM_ESC_SQUOTE parameter is set, then the transformer stages work well but fails in plugin stage with the following errors:
DB2_UDB_API_0: When processing argument -outlinkprops When processing output link property list: {
PREFETCH=50,
USERSQL='SELECT c1,c2 FROM test24726 where c2 < \2011\-10\-21 is not a valid property list: Expected "," or "}", got: <eof>
Encountered <eof> while seeking end of proplist
Case -2
Consider a job with job parameter WHERECond with value
WHERECond =WHERE ETL_TS = '2012-02-02 00:00:00.000000'
With the transformer stage's column output as "select * from xmeta.mytab":WHERECond, and if the column output is consumed by plugin stage for executing this SQL, as seen in case-1 the transformer stage sees the Unrecognized argument for space separated argument.
The following error occurs -
TX_BuildSQL: Unrecognized argument: 00:00:00.000000
If APT_OSL_PARAM_ESC_SQUOTE is set still error will be seen and following error is thrown
TX_BuildSQL: Unrecognized argument: 00:00:00.000000\
Log InLog in to view more of this document
Was this topic helpful?
Document Information
Modified date:
25 April 2025
UID
swg21578409