iSeries robot will not start on foreign-language AS400 machines

book

Article ID: 35022

calendar_today

Updated On:

Products

DX Infrastructure Management NIMSOFT PROBES CA Unified Infrastructure Management for z Systems CA Unified Infrastructure Management On-Premise (Nimsoft / UIM) CA Unified Infrastructure Management SaaS (Nimsoft / UIM)

Issue/Introduction

When installing the iSeries robot on an AS400 machine which is configured to use a non-English language, the robot may not start correctly and the controller.log may show a sockConnect failed error.

The controller.log may show that the domain has not been properly read from the config file (domain = none) and the controller may be trying to erroneously contact a hub at 127.0.0.1 instead of the proper hub IP:

 ************Beginning of data**************                                                    
May 10 17:14:40:704 Controller: ----- NimBUS controller 5.50 Sep 12 2011 started -----          
May 10 17:14:40:718 Controller:  Name   = nimmachine, IP = 192.168.1.40, Port = 48000            
May 10 17:14:40:718 Controller:  OS     = IBM / AS400 / AS400                                   
May 10 17:14:40:718 Controller:  Domain = none                                                  
May 10 17:14:40:718 Controller:  Loglevel = 0, Logfile = controller.log                         
May 10 17:14:40:805 Controller:  Running as NON-ROOT user NIMBUS (-196085)                      
May 10 17:14:40:805 Controller: -----                                                           
May 10 17:14:41:095 Controller: Controller on nimmachine port 48000 started                       
May 10 17:14:41:113 Controller: nimPostMessage: sockConnect failed                              
May 10 17:14:42:233 Controller: Session Send failed                                             
May 10 17:14:42:234 Controller: hub (127.0.0.1) NO CONTACT (communication error)                
May 10 17:14:43:264 Controller: Session Send failed                                           

or in some cases you may see a simple socket connection failure error such as:

Jun 21 15:50:24:875 Controller: ----- NimBUS controller 5.71 Jun 29 2012 started -----
Jun 21 15:50:24:875 Controller:  Name   = lxxxxxxxx, IP = 10.90.2.99, Port = 48000
Jun 21 15:50:24:875 Controller:  OS     = IBM / AS400 / AS400
Jun 21 15:50:24:875 Controller:  Domain = none
Jun 21 15:50:24:875 Controller:  Loglevel = 0, Logfile = controller.log
Jun 21 15:50:24:876 Controller:  Running as user NIMBUS (640)
Jun 21 15:50:24:876 Controller: ----- 
Jun 21 15:50:24:884 Controller: Controller on lxxxxxxxx port 48000 started
Jun 21 15:50:24:892 Controller: send_internal_alarm: sockConnect failed

- In the above case, the controller may start but not the hdb or spooler processes

Cause

- AS400 language code

Environment

Release: Any release
Component: iSeries (AS400) Robot
iSeries Robot v5.50 or higher

Resolution

In order to correct this problem, for this case, the language "English Upper/Lowercase" (language code 2924) should be installed as a secondary language in the environment.

Then, the primary language of the user being used to install the robot should be set to "ENU" (US English) and the robot should be reinstalled.

https://www.ibm.com/docs/en/cics-ts/5.5?topic=development-national-language-codes-application

Note that the CCSID on the systems should be set to standard English (00037)

https://www.ibm.com/docs/en/i/7.4?topic=information-ccsid-values-defined-i

After this, the robot should be able to interpret its config files and start correctly.

The task of configuring the primary/secondary language of the system(s) should be handled by the iSeries/AS400 administrator.

Note that after any changes are made to the language settings, the robot must be restarted for the change to take affect.

Additional Information

Reference

Changing the primary language on iSeries 7 systems:

https://www.ibm.com/docs/it/i/7.4?topic=partition-changing-primary-language

Language Identifier Single-Byte CCSID Mixed-byte CCSID Language
ENU 00037 None United States English

Note that in one particular case, the Nimbus profile/ID created at the beginning of the install process:

...somehow had the CCSID value hardcoded at 37. The robots on those systems would not start up correctly but other robots started up just fine which did not have the hardcoded (via customized command) value