SUBJECT: Hot fixes for VisualAge TeamConnection Version 3 Fixpak 2 - UNIX HotFix 3 for Fixpak 3.0.2 DATE: July 21, 1999 MOST UP-TO-DATE VERSION OF THIS README FILE ------------------------------------------- The most up-to-date version of this readme file is located in: ftp://ftp.software.ibm.com/ps/products/teamconnection/fixes/PLATFORM/fixpak302/hotfixes/readme.hotfix3.fixpak302.txt Where PLATFORM is one of the following: aix, hpux, solaris TABLE OF CONTENTS ----------------- What are hot fixes? Hot fixes shipped for fixpak 3.0.2 Hot Fix #3 Hot Fix #2 Hot Fix #1 Important pre-requisite information for AIX users UNIX Installation Documentation changes WHAT ARE HOT FIXES? ------------------- Hot fixes are interim fixes shipped by the VisualAge TeamConnection development team that do not follow the normal (planned) fixpak schedule. These fixes are tested, but not through our normal regression test cycle. THEY SHOULD ONLY BE APPLIED TO INSTALLATIONS AT VERSION 3, FIXPAK 2 LEVEL. In case that later on you want to ensure that you have installed this hotfix, you can do the following: All platforms: Execute the new command introduced in hotfix 3: tclevel Intel: Verify if d:\teamc\readme.hf3 is installed. Where d: is the drive where VisualAge TeamConnection is installed. This file name is compliant with the 8.3 limitation for FAT drives. Unix: Verify if $TC_HOME/readme.hotfix3.fixpak302.txt is installed. Where the default $TC_HOME for AIX is /usr/teamc and for HP-UX and Solaris is /opt/teamc. If you have received interim fixes from IBM support before this hotfix you should be aware that if this hotfix is a cumulative hotfix, then this will supersede those interim fixes. HOT FIXES SHIPPED FOR FIXPAK 3.0.2 ---------------------------------- Hot Fix #3 - 1999-06-30.tar (It is cumulative and includes Hot Fix #1 and #2) Hot Fix #2 - 1999-04-20.tar (It is cumulative and includes Hot Fix #1) Hot Fix #1 - 1999-03-16.tar HOT FIX #3 ---------- The following defects and APARs (sorted by Defect Name) are fixed in Hot Fix 3: 33246 NT GUI - Cannot enter a directory with a space in the Source Directory field. APAR: IY01079 33252 NT GUI - directory names should not be included in the list of choices for part create. APAR: IX88734 33486 change some messages used with authentication function 33492 change message 6021-103 33493 do not checkin a checked-out part that should have a file to avoid changing the file size of the part to 0 bytes inside the family APAR: IY00222, IX88533 33582 HTML web client not working with PASSWORD_ONLY/PASSWORD_OR_HOST 33668 renamed parts do not migrate correctly from V2 33669 build parameters on parts need to support > 245 chars. 33670 use pathname to migrate common parts, rather than basename 33733 provide internal tracing for some login functions 33840 partview failed in format parser command due to null workarea 33867 migrate common parts skips valid common parts 33869 migrate partfullview on OS2 does not extract any parts. 33884 incorrect configField data gets migrated from V2 33916 dropDate is not set for deleted parts after migration from V2 33921 build rels do not migrated correctly from V2 33937 tclicmon: entries out of order in audit.log cause infinite loop APAR: IY01389 34026 prepare tclevel tool to easily identify version of the code 34052 Force all build rels to the tip 34139 Fix problems with tclogin APAR: IY01724 HOT FIX #2 ---------- The following defects and APARs (sorted by Defect Name) are fixed in Hot Fix 2: 22229 AIX: teamc tclogin command echoes typed password on screen 33064 Migrate partfullview on AIX fails 33092 When Part Checkout to an invalid directory fails, the lock is kept on part APAR: IX88533 33109 CMVC -> TC migration, migrate commonparts fails APAR: IX89193 33125 Make necessary workarea integrate change. 33144 Scalability: Memory Leak on reports 33213 Driver commit failed after migration (version sequence wrong) APAR IX89191 33214 TC migration - isTip set incorrectly on fhcoversion record 33216 CMVC migtc - wrong parts extracted after migration. 33237 cfgField/*.ddv must be processed after other .ddv 33240 tcstop needs to account for different shared memory reports APAR: IX89113 33308 add WorkAreaExtract authority to the default authorit.ld 33309 Add Erwin model changes 33310 monitor tool core dumps on Solaris APAR: IX89148 33326 Add xml fixes 33329 Workarea -extract fails when file size greater than 16MB 33334 Handle locks involved in contention APAR: IX88762 33352 File names with spaces in Create->Choices in NT client APAR: IX89566 33354 Model additions for ERwin 33457 Drop erw tables HOT FIX #1 ---------- The following defects (sorted by Defect Name) are fixed in Hot Fix 1: 32538 - SERVER wrong behavior on userExit id 1 when rc <> 0 Duplicate defects: 32807 32965 - SERVER WebClient only allows one common release on PartCheckIn 32844 - SERVER Build status constraint with workarea -undo 32947 - SERVER Records shown on access list 32972 - SERVER Modify 0011-222 message to say that user is not currently logged in 32974 - SERVER out of synch problem and rc 128 problem 33026 - CLIENT Intermittent trap in FHCRSCLI during populate 33064 - SERVER Migrate partfullview fails 33105 - SERVER Ovewriting of older parts when adding driver members Duplicate defects: 32674, 32718 33105 - SERVER sample userExit C program for MemberCreate exitid 0 IMPORTANT PRE-REQUISITE INFORMATION FOR AIX USERS ------------------------------------------------- Due to changes in the level of xlC.rte (runtime for the C/C++ compiler) used in our build machines for our Year 2000 readiness, you may encounter some error messages when running some VA TC executables (such as fhcirt, fhcirtup, teamcd). These error messages occur if you have an AIX 4.2.1 system running a level of xlC.rte that is lower than 3.1.4.4. An example of this type of errors is shown below: exec(): 0509-036 Cannot load program fhcirt because of the following errors: 0509-023 Symbol __CurrentException in ksh is not defined. 0509-026 System error: Cannot run a file that does not have a valid format Thus, if you do not have the level 3.1.4.4 or higher of the xlC runtime, you will get the above message when trying to use the any of the server components(fhcirt, teamcd, teamcbld). This means our AIX 4.2.1 customers will need to upgrade xlC to the current fix, which as this moment is 3.1.4.8. The quickest way to determine what xlC version is installed is by performing the following action: lslpp -l | grep xlC.rte The following sections provide information on how to get the latest fix for xlC.rte. a) For the details on how to obtain AIX updates and APAR packages, see: http://www.software.ibm.com/year2000/papers/aixy2k.html#howtogetapars b) From (a), a more direct route is to use the self-help service provided by the following URL: http://service.boulder.ibm.com/cgi-bin/support/rs6000.support/downloads In the case of the AIX xlC.rte level 3.1.4.8, here is the specific example. This is the sequence that was used in May 1999; keep in mind that the AIX support team may decide to modify the sequence at any time!. * Select AIX General Software Fixes. Wait for a new screen. * Select AIX Fix Distribution Service. Wait for a new screen. * Ensure that you mark "AIX Version 4" in the left column, and select "FileSet name 3 chars" in the right column". * Enter in the "Find Fix" field: xlC Then press Find Fix. You will see a different screen. * From the output list, select: U453695 - xlC.rte.3.1.4.8 * Select the version of your AIX system, ensure that the other fields have the correct information and then press "Get Fix Package". * You will see a different screen with the co-requisite and pre-requisite filesets that are needed to provide a complete installation of the fix. * Download and install the fixes. UNIX INSTALLATION ----------------- For this example assume that the tar file (such as 1999-04-20.tar for Hot Fix #2) is located in /tmp. 0. login as root. 1. Stop all the programs related to VisualAge TeamConnection: family server (you may use tcstop), notify daemon, build server, GUI. If you do not do this step, the installation of the hotfix will fail because some files that are in use will not be replaced with the new ones. 2. Stop all major applications running your system, except DB2 which is needed for the rebind action. WARNING: The rebind action in the next section requires lots of resources in your system. Thus, to minimize the risk of a failure in that step, you need to stop all the applications in your system. 3. cd /tmp 3.5 If the file is compressed (ends with .Z) then uncompress it: uncompress 1999-06-30.tar.Z The result will be an uncompressed tar file named: 1999-06-30.tar 4. tar -xvf 1999-06-30.tar hfi 5. FOR AIX ONLY: To avoid installation problems, please execute the following command to removed unused shared libraries from memory: /etc/slibclean 6. ./hfi The hfi script ("hot fix install") will first check to ensure that TeamConnection is not running on your system. It will then prompt you for the following information: o TeamConnection code HOME directory. The default is AIX: /usr/teamc HP-UX: /opt/teamc Solaris: /opt/teamc o TeamConnection hot fix tar file name. In this example is: /tmp/1999-06-30.tar o TeamConnection hot fix fileset. Select one: server,client,all Provided that all the requested information is correct, the utility will then make backup copies of all the base parts to be replaced by the hot fix process (e.g. libfhckrnl.a will be libfhckrnl.a.1999-06-30). After completing the backup the new parts will be copied into the proper directories. Note: If you get a message that says "ERROR running command", the most likely causes are: * There is not enough available file system space to install the code. * The directory/file permissions might not be appropriate to install the code. HOW TO UPGRADE EACH FAMILY -------------------------- You must execute the following sequence for EACH family in order to upgrade it to the Hot Fix: a. Login as the VA TC family user id. b. Make a backup of the database. The format is: db2 backup database family_name to backup_directory Note: * For details on backing up DB2 databases, see the DB2 Universal Database Administration Guide. c. Rebind the database. The following command uses a lot of resources in your system. If there is not enough paging space, then DB2 will fail to complete the processing of the following command. fhcirtup $TC_HOME/nls/cfg/*.dd* $TC_HOME/nls/cfg/*.bnd Notes: * In case that this command fails, you can do the following: 1) If during the execution of fhcirtup, you encounter the following message: Error was on line '8' of file '/usr/teamc/nls/cfg/_ewswerw.ddl' Then the following workaround can be performend, ONLY if you are NOT a user of Data Atlas or Data Dictionary: 1.a) login as root in UNIX or as a member of the Administrators group in NT. 1.b) Change to the directory where VA TC was installed. This is the value of $TC_HOME for family user ids. The defaults are: AIX: /usr/teamc HP-UX: /opt/teamc Intel: d:\teamc (where D is the appropriate unit drive) 1.c) Change to the directory where the _ews* files are located: UNIX: cd nls/cfg Intel: cd nls\cfg 1.d) Create a new directory where the _ews* files will be moved: mkdir ews 1.e) Move ALL the _ews* files (which are ONLY needed for working with Data Atlas or Data Dictionary) to the newly created "ews" directory. 1.e.1) In UNIX do: mv _ews* ews/. 1.e.2) In Intel you may do a copy and then a delete of those files: copy _ews* ews\. del _ews* 1.f) login as the VA TC family user id. 1.g) Run again "fhcirtup" as indicated in the readme for the hotfix. 1.h) Continue with the instructions in this readme. Step: "d) Update the database views" 2) Just in case you need to capture the messages during the execution of fhcirtup, and if you want to show more messages, do the following: fhcirtup -v $TC_HOME/nls/cfg/*.dd* $TC_HOME/nls/cfg/*.bnd 2>&1 | tee fhcirtup.out 3) If the fhcirtup fails, then a very likely possibility for the failure is that there is not enough paging space in your system and DB2 cannot process the appropriate requests. Please take a look at the following DB2 log file: $DB2_INSTANCE_HOME/sqllib/db2dump/db2diag.log There might be some entries at the bottom of the file that mention problems with the paging space. If this is the case, then you need to increate the paging space in your system, reboot it and try again the fhcirtup command. 4) Open another window in your system and monitor the paging space. In AIX, you can issue the command: lsps -a If you see that the paging space is completely used, then you may need to increate the paging space. An rough guideline is to have a ratio of 1:2 between RAM and paging space for small/medium machines; a ratio of 1:3 for heavy used machines might be appropriate. d. Update the database views by running: ${TC_HOME}/samples/ksh/updateviews This shell script invokes the fhcfupdv command. Notes: d.1) You can run the fhcfupdv command multiple times on the same view without hurting the family. d.2) If you do not run the above fhcfupdv commands, then you may get the following error message when dealing with objects that use configurable fields: 0012-002 The following SQL error was detected: File Name: adsqlsvr.sqc Line: 388 SQLCODE: -727 SQLSTATE: 56098 SQLMessage: SQL0727N An error occurred during implicit system action type "2". Information returned for the error includes SQLCODE "-206", SQLSTATE "42703" and message tokens "SYMPTOM". SQLSTATE=56098 e) Run the database reorg script: $TC_HOME/samples/ksh/analyzeReorg TeamConnection ships with a database reorg script that you should use after making significant changes to a family. A significant change might be loading the family, adding lots of new parts, or making numerous part changes. You should definitely run the reorg script after running the fhcirtup command. This process should produce the optimal statistics and performance. As the VA TC family user id, run: $TC_HOME/samples/ksh/analyzeReorg f) Rebind the database by running the folowing command: Intel: fhcirt %TC_HOME%\nls\cfg\*.bnd Unix: fhcirt $TC_HOME/nls/cfg/*.bnd This allows DB2 to recalculate the optimal access plans for the static sql in the TeamConnection application. g) Now you can start using your VA TC family. h) In case that you had the problem with fhcirtup and had to move some files to %TC_HOME%\nls\cfg\ews, then you need to copy them back to %TC_HOME%\nls\cfg, because these files are needed to create a new family. DOCUMENTATION CHANGES --------------------- The following documentation changes are applicable to the hot fixes: * DB2: Better performance when using DB2_CORRELATED_PREDICATES=ON A customer confirmed that the following DB2 variable available in 5.0 (but which was improved in DB2 UDB 5.2), greatly improved the performance of some DB2 actions. a) Setup the variable via the DB2 Profile Registry command: db2set DB2_CORRELATED_PREDICATES=ON b) Stop and restart the DB2 instance: db2stop db2start c) Verify that the variable is set db2set -all d) An example of the output from (c) is (showing only the variable in question): [i] DB2_CORRELATED_PREDICATES=ON * Defect 33105: userExit program for MemberCreate exit Id 0 A userExit C program for MemberCreate exit Id 0 (Unix: samples/c/MC0.c Intel: SAMPLES/MC0.c) was added. This user exit prevents users from adding driverMembers that are in a fix state. * Defect 33308: WorkAreaExtract authority is missing from authorit.ld Due to an omission in authorit.ld, non-superusers are not authorized to use the workarea extract command. For existing family it is necessary to add the appropriate entries for the WorKAreaExtract permission in the authorit.ld file in order for non-superusers to do the extract. After the hotfix is applied, any new families that are created will have the proper entries in authorit.ld 1. Edit the authorit.ld file located in the family home directory. Add WorkAreaExtract to each group that currently has WorkAreaCreate authority. By default, this is the list: developer+|WorkAreaExtract builder|WorkAreaExtract releaselead|WorkAreaExtract componentlead|WorkAreaExtract projectlead|WorkAreaExtract 2. execute from the family home directory: fhclauth authorit.ld NOTE: fhclauth does not catch many errors in the authorit.l d file. Therefore Be very careful to add the entries correctly. Otherwise, errors will most likely not be detected until run time by the users. 3. tcstop familyName 4. teamcd familyName * Defect 33352: using file names with spaces in NT It was decided to make Actions->parts->create->choices work with file names with spaces, then allow the user to checkout the part like normal, work on it with their own editor, and check it back in. CURRENT BEHAVIOR:(v302 HOTFIX2) Actions->Parts->Edit Still cannot be used with file names with spaces. Actions->Parts->create The choices button will produce a list of files with quotes around them. Selecting one of them and choosing OK, causes the quoted path to be written into the Path Names field of the Create dialog. For all the Parts dialogs (create, checkout, etc) The user must type quotes around file names with spaces in the "Path Names" entry field. If the user types in part path names (with spaces) without quotes, the command will fail because the part will not be found. A message will alert the user that they should try using quotes. EXAMPLES: Actions->Parts->Create->Choices Choose any file with spaces, such as "my file.c" Alternatively, you may type a long file name with blanks into the Path Names field of the Create Parts dialog and specify double quotes to surround the file name: "my file.c" You may not type a long file name with blank spaces without quotes into the Path Names field of any of the Parts dialogs. my file.c * Defect 34026: prepare tclevel tool to easily identify version of the code A new tool called "tclevel" can be used now to easily identify the version of the code. For example: $ tclevel @(#) teamc (C) Copyright IBM Corp.,1996,1999 @(#) teamc Platform: AIX tcaix02 2 4 000044289000 @(#) teamc Release: v302 @(#) teamc Driver: N1999-06-30 @(#) teamc HotFix: 3 The above information (with the exception of the hotfix value) can also be obtained as follows: $ cd $TC_HOME/bin $ what teamc | grep teamc * Defect 34139: Fix problems with tclogin In hotfix 3 some previous login problems were fixed by no longer using client addresses to distinguish security tokens. Older v302 clients should work well with the fixes applied to the server. There are three points to note: 1) Bad security tokens will remain in the server's array. The length of the token array on the server was increased to 5000 tokens to handle a larger number of tokens, but the administrator should ensure that the family is recycled regularly so that the token array does not fill up. This means bringing the family down and then up again. 2) One login problem that was not fixed in v302 by this hotfix occurs when the user is logged in and the server goes down and comes back up. If the client next attempts a report like "Objects->Users->Users" or the equivalent "teamc report" command, they will see a message similar to the following: ------------------------------------------------------------------------- 0011-163 The family server and the local login manager are out of synch. You need to login again to resynch. Recovery: You need to login again. If your last action was a report, you need to logout first and then login again. ------------------------------------------------------------------------- Unfortunately, the login attempt will fail. To overcome this problem, the user must first LOGOUT and then LOGIN again. 3) The login fixes for this hotfix have resulted in a confusing error message. When the user is logged in and the server goes down and comes back up, message 0011-163 appears when the user tries to log out. The message can be ignored and considered to mean the logout was successful. * Defects 33246 and 33252: NT GUI - directories and files with a space in the name. There is a problem when trying to enter spaces in both the directory and the file name when doing Actions->Parts->Create. When you press the Choices button, it expects that the source directory path name should not have double quotes around it. However, after you have chosen a part and it appears in the name field, when you press OK to create the part, it expects to have the double quotes around the source directory path name. WORKAROUND: * Do Actions->Parts->Create * Type the directory path without quotes into the "Source directory" field, such as: d:\teamc\long name * Click the Choices button. * Choose the files you want and press OK. * In the Parts->Create dialog, the part names appear in the "Part names" field. Put double quotes around the directory path in the "Source directory" field and press OK. * The part should be created successfully. *** end of file ***