IBM Support

Limitation of the Parameter APT_OSL_PARAM_ESC_SQUOTE on Plugins on Parallel Canvas.

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\

[{"Product":{"code":"SSVSEF","label":"IBM InfoSphere DataStage"},"Business Unit":{"code":"BU048","label":"IBM Software"},"Component":"Not Applicable","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"8.5.0.1","Edition":"","Line of Business":{"code":"LOB76","label":"Data Platform"}}]

Log InLog in to view more of this document

This document has the abstract of a technical article that is available to authorized users once you have logged on. Please use Log in button above to access the full document. After log in, if you do not have the right authorization for this document, there will be instructions on what to do next.

Document Information

Modified date:
25 April 2025

UID

swg21578409