DUAS 6:.sh_history filled when unienv.ksh is used

Document ID : KB000104723
Last Modified Date : 04/07/2018
Show Technical Document Details
Issue:
Since upgrade from v5 to v6, the .sh_history of the system users with shell /sbin/sh keeps on being filled after sourcing the duas v6 environment, which may cause a file-system full and an impact in production. 

Investigation:

1. In order to reproduce, use an HP-UX Itanium server where you have a DUAS v6 installed.
2. Create a system user or use an existing one that has as shell /sbin/sh ( on my end it is festopa).
3. Empty / delete the .sh_history file which is found on the user's HOME ( on my end it is on /home/festopa )
4. Load the Dollar Universe v6 environment ( either unienv.ksh or $UXMGR/uxsetenv)
5. You will see that the file $HOME/.sh_history will contain 3104 lines every time the environment is loaded, caused by script unigeneric that is called within the unienv.ksh 
Environment:
Issue reproduced on HP-UX but could be present on other Unix Systems
Cause:
On Unix with sh shell only functions are logged in history file. Due to a lot of functions in unigeneric, the history file grows 10 kB for each call of unienv.ksh
Resolution:
Immediate workaround: purge regularly the $HOME/.sh_history file
Solution for existing installations: add the following in unienv.ksh 

LOCALOS=`uname -s`
if [ "${LOCALOS}" != "SunOS" ]; then
    set -o nolog
fi

Solution: new installations on Dollar Universe 6.9.41 and superior will have the correction available in unienv.ksh