I am searching since days for a solution of my problem.
i am running Pentaho PDI CE 9.4.0.0-343 on a windows system. I have prepared a very simple job with Start-Get file with FTP-success steps.
If i am running the job locally everything is working fine, if i transfer the job to the carte server i always get the same error below:
2023/11/23 21:07:28 - Pentaho FTP hourly_shotdata - Start of job execution
2023/11/23 21:07:28 - Pentaho FTP hourly_shotdata - Starting entry [Get a file with FTP]
2023/11/23 21:07:28 - Get a file with FTP - Started FTP job to 10.161.96.91
2023/11/23 21:07:58 - Get a file with FTP - ERROR (version 9.4.0.0-343, build 0.0 from 2022-11-08 07.50.27 by buildguy) : Unexpected error : java.lang.StringIndexOutOfBoundsException: Range [17, 1) out of bounds for length 17
2023/11/23 21:07:58 - Get a file with FTP - ERROR (version 9.4.0.0-343, build 0.0 from 2022-11-08 07.50.27 by buildguy) : Error getting files from FTP : Success condition was broken! We have 1 error(s)
2023/11/23 21:07:58 - Pentaho FTP hourly_shotdata - Finished job entry [Get a file with FTP] (result=[false])
2023/11/23 21:07:58 - Pentaho FTP hourly_shotdata - Job execution finished
i am a little bit helpless after days of finding a solution and hopefully someone can help me.
Thanks, Armin
<?xml version="1.0" encoding="UTF-8"?>
<job>
<name>Pentaho FTP hourly_shotdata</name>
<description/>
<extended_description/>
<job_version/>
<job_status>0</job_status>
<directory>/</directory>
<created_user>-</created_user>
<created_date>2019/11/08 12:30:59.069</created_date>
<modified_user>-</modified_user>
<modified_date>2019/11/08 12:30:59.069</modified_date>
<parameters>
</parameters>
<slaveservers>
<slaveserver>
<name>Carte</name>
<hostname>localhost</hostname>
<port>8081</port>
<webAppName/>
<username>cluster</username>
<password>xxx</password>
<proxy_hostname/>
<proxy_port/>
<non_proxy_hosts/>
<master>Y</master>
<sslMode>N</sslMode>
</slaveserver>
<slaveserver>
<name>CarteServer</name>
<hostname>127.0.0.1</hostname>
<port>8080</port>
<webAppName/>
<username>cluster</username>
<password>xxx</password>
<proxy_hostname/>
<proxy_port/>
<non_proxy_hosts/>
<master>Y</master>
<sslMode>N</sslMode>
</slaveserver>
</slaveservers>
<job-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_JOB</id>
<enabled>Y</enabled>
<name>ID_JOB</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>JOBNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>START_JOB_ENTRY</id>
<enabled>N</enabled>
<name>START_JOB_ENTRY</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</job-log-table>
<jobentry-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>JOBENTRYNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>RESULT</id>
<enabled>Y</enabled>
<name>RESULT</name>
</field>
<field>
<id>NR_RESULT_ROWS</id>
<enabled>Y</enabled>
<name>NR_RESULT_ROWS</name>
</field>
<field>
<id>NR_RESULT_FILES</id>
<enabled>Y</enabled>
<name>NR_RESULT_FILES</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>COPY_NR</id>
<enabled>N</enabled>
<name>COPY_NR</name>
</field>
</jobentry-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<pass_batchid>N</pass_batchid>
<shared_objects_file/>
<entries>
<entry>
<name>Get a file with FTP</name>
<description/>
<type>FTP</type>
<attributes/>
<port>21</port>
<servername>10.161.xx.xx</servername>
<username>admin</username>
<password>xxx</password>
<ftpdirectory>/sda1</ftpdirectory>
<targetdirectory>Z:\</targetdirectory>
<wildcard>^.*ShotData.csv$</wildcard>
<binary>N</binary>
<timeout>0</timeout>
<remove>Y</remove>
<only_new>Y</only_new>
<active>N</active>
<control_encoding>ISO-8859-1</control_encoding>
<movefiles>N</movefiles>
<movetodirectory/>
<adddate>N</adddate>
<addtime>N</addtime>
<SpecifyFormat>N</SpecifyFormat>
<date_time_format/>
<AddDateBeforeExtension>N</AddDateBeforeExtension>
<isaddresult>N</isaddresult>
<createmovefolder>N</createmovefolder>
<proxy_host/>
<proxy_port/>
<proxy_username/>
<proxy_password>Encrypted </proxy_password>
<socksproxy_host/>
<socksproxy_port>1080</socksproxy_port>
<socksproxy_username/>
<socksproxy_password>Encrypted </socksproxy_password>
<ifFileExists>ifFileExistsSkip</ifFileExists>
<nr_limit>10</nr_limit>
<success_condition>success_if_no_errors</success_condition>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>288</xloc>
<yloc>160</yloc>
<attributes_kjc/>
</entry>
<entry>
<name>Start</name>
<description/>
<type>SPECIAL</type>
<attributes/>
<start>Y</start>
<dummy>N</dummy>
<repeat>N</repeat>
<schedulerType>0</schedulerType>
<intervalSeconds>0</intervalSeconds>
<intervalMinutes>15</intervalMinutes>
<hour>2</hour>
<minutes>0</minutes>
<weekDay>1</weekDay>
<DayOfMonth>1</DayOfMonth>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>176</xloc>
<yloc>160</yloc>
<attributes_kjc/>
</entry>
<entry>
<name>Success</name>
<description/>
<type>SUCCESS</type>
<attributes/>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>400</xloc>
<yloc>160</yloc>
<attributes_kjc/>
</entry>
</entries>
<hops>
<hop>
<from>Start</from>
<to>Get a file with FTP</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>Y</unconditional>
</hop>
<hop>
<from>Get a file with FTP</from>
<to>Success</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
</hops>
<notepads>
</notepads>
<attributes/>
</job>