Pentaho

 View Only

 PDI 9.2 / 9.3: Oracle Bulk Loader: Error because CTL-file not found: blanks replaced by %20

Peter Sieg's profile image
Peter Sieg posted 05-25-2022 15:12
Hi,

when I use blanks in the Control filename of the Oracle Bulk Loader Step and run the transformation, the transformation will fail.
The Oracle Bulk Loader Step generates an filename with blanks replaced by %20. The control-filename "c:\temp\text with blank.cfg" becomes "c:\temp\text%20with%20blank.cfg".

PDI tries to call the Control filename without balnks and fails:
sqlldr control='c:\temp\text with blank.cfg' userid=a/******@a'

The same problem exists when variables with included blanks are used in the Control-filename e.g. c:\temp\${Internal.Step.Name}.cfg

The problem only affects the control file. The data-filename is fine.

Does anyone have a solution to the problem?
How can I use blanks in Control-filename? (I don't want to replace the blanks by underscore. I want to use a Control-filename like this c:\temp\${Internal.Step.Name}.cfg and I don't want to think about the blanks in step-name)

Thanks in advance.



Andrew Cave's profile image
Andrew Cave
have you tried putting quotes around the file-name with the spaces?
Peter Sieg's profile image
Peter Sieg
Hi Andrew,
I tried your suggestion, but quotes ends with the error "invalid filename". I tried single and double quotes araound the filename.
The bulk loader generates the the command automatically with single quotes around the filename (see screenshot).

Just the Control-filename is affected. The Data-filename (just another file-extension) is fine.

Thanks.

Any other suggestions?