Server Automation (SA) - java.lang.IllegalArgumentException error prevents TWIST starting

  • KM02539787
  • 31-Aug-2016
  • 14-May-2021

Archived Content: This information is no longer maintained and is provided "as is" for your convenience.

Summary

When starting the TWIST component of SA, the error "java.lang.IllegalArgumentException: can't parse argument number" is seen in the TWIST's boot.log file.

Error

Upon starting/restarting the TWIST, the following error message is seen in the /var/log/opsware/twist/boot.log file:

Java HotSpot(TM) 64-Bit Server VM warning: .hotspot_compiler file is present but has been ignored.  Run with -XX:CompileCommandFile=.hotspot_compiler to load the file.
LogManager error of type FORMAT_FAILURE: Formatting error
java.lang.IllegalArgumentException: can't parse argument number: 3DES
.
.
.
Caused by: java.lang.NumberFormatException: For input string: "3DES"
        at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
        at java.lang.Integer.parseInt(Integer.java:580)
        at java.lang.Integer.parseInt(Integer.java:615)
        at java.text.MessageFormat.makeFormat(MessageFormat.java:1427)
        ... 76 more

The twist will not start.


Cause

In this case, the problem was caused by ldap entries present in the /etc/opt/opsware/twist/twist_custom.conf
file.  Starting with 9.1x, ldap configuration values were moved from static files on the SA slices to entries added into
the SA database by the ldap_config.sh file.   The SA core where this problem occurred had been updated recently from
SA 9.1x to SA 10.50.  The ldap entries should have been moved from the various twist config files during the upgrade
but were missed.  On this server, in the twist_custom.conf file, several ldap entries were found, including the following.. 

aaa.ldap.search.pw={3DES}klZUbWUxBwpOpPpyEylcMg==

The "3DES" tag in this value was picked up by the twist when it started and caused a formatting error.  



Fix

Starting with SA 9.1x, all LDAP configuration values should be present in the SA database.  
To get the twist going, edit the twist_custom.conf file and remove any ldap entries found.
Then start (or restart) the twist to have it come up without the ldap entries present.  

Once its been verified that the twist is indeed running, issue the following command to 
report on any ldap configuration stored in the SA database.. 

/opt/opsware/support/bin/ldapAttrib

If this command returns no information, then run the ldap_config.sh command (documented
in the various SA Administration Guides) and configure ldap into the SA environment.  If the 
command does return information which is accurate, then no further work should be required
and importing/exporting of LDAP users should be successful.