******************************************************************************* Content Manager V7.1.0 fixpack 8 for Windows April 30, 2002 This is an interim fixpack between Formal Corrective Service Deliverables (CSDs). Table of Contents 1. Installation Requirements 2. Installation Instructions 3. APAR Descriptions 4. Documentation APAR Fixes with Descriptions ******************************************************************************* ********************************************* 1. Installation Requirements ********************************************* This fixpack is for Windows. In order to install this fixpack, you must be at this minimum product base level: a) Content Manager for Windows V7.1.0 (syslevel 07010000) You can determine your syslevel by: - Clicking on the START button and select RUN - Enter "REGEDIT" - Double click on "HKEY_LOCAL_MACHINE" - Double click on "SOFTWARE" - Double click on "IBM" - Double click on "Content Manager" - Click on "7.1". On the right side of the screen, the syslevel is recorded under "Fixpak applied" ********************************************* 2. Installation Instructions ********************************************* 1. Shut down and reboot your workstation to ensure that all file locks are released. 2. On the Fixpack FTP site, CD into the desired language subdirectory (for example: CD ENU to find the English Fixpack). Be aware that each National language has its own fixpack package. Because all the language fixpacks have the same name, be sure you go to the correct language subdirectory. If you don't find the language fixpack you need, ask for it. 3. Download the CM7108.WIN.EXE file in binary mode to a temporary subdirectory on your workstation. 4. CM7108.WIN.EXE is a self-extracting WINZIP file that can be extracted by simply entering CM7108.WIN.EXE . You will be prompted for a temporary directory to unzip to. You should have at least 15MB of free space. 5. Follow the GUI install panels. 6. After the installation has completed, if you have DB2 you must rebind the databases of your library server and object server. You can rebind the server databases as follows: Library Server: Start->Programs->IBM Content Manager for Multiplaforms->Utilities-> Library Server Database Bind Object Server: Start->Programs->IBM Content Manager for Multiplatforms->Utilities-> Object Server Database Bind 7. If your database is Oracle 8.1.6, the installation of any CM server fixpack requires certain DLLs to be copied from the unzipped fixpack Orautil\816 directory to the \dll\ directory: library server: frnnllls.dll frnnllio.dll frnnlluq.dll frnnllff.dll object server: frnnlblb.dll ********************************************* 3. APAR Fixes with Descriptions ********************************************* ************************************ Fixpack 710.8 ************************************ APAR NUMBER: IR45240 COMPONENT: CM SYSTEM ADMIN APAR DESCRIPTION: When using the sysadmin client through the sysadmin gateway to access an object server's properties, the gateway terminates. A popup from the MicroSoft VC++ runs time shows error message "frnngate.exe abnormal termination". This error message appears in the java console: Exception occurred during event dispatching: java.lang.NullPointerException at sa.client.SajcObjectServerDialog.intPlatform(SajcObjectServerDialog.java:943) at sa.client.SajcObjectServerTab.createDialog(SajcObjectServerTab.java:180) at sa.client.SajcObjectServerTab.(SajcObjectServerTab.java:67) at sa.client.SajcObjectServerDialog.createDialogBox(SajcObjectServerDialog.java:390) at sa.client.SajcObjectServerDialog.(SajcObjectServerDialog.java:106) at sa.client.SajcNodeOSName.saNodeObject(SajcNodeOSName.java:362) at sa.client.SajcNodeOSName.saPropertyObject(SajcNodeOSName.java:347) at sa.client.SajcNodeOSName$3.actionPerformed(SajcNodeOSName.java:471) at javax.swing.AbstractButton.fireActionPerformed(Unknown Source) FIX DESCRIPTION: In the sa.server.SajsAPIOSGetInfo class, missing readLine() from Socket for Lib server name is added to fix the problem. ************************* APAR NUMBER: IR47140 COMPONENT: 5648D0422 / LIBRARY SERVER PMR NUMBER: 44932,044,866 APAR DESCRIPTION: This problem shows up if a decimal keyfield has been defined and is included in an indexclass. A search on the this indexclass caused the library server child process, FRNNLLCH.exe, to take the application error reported by Windows. FIX DESCRIPTION: Fixed how we packed a single valued decimal field. ************************* APAR NUMBER: IR47585 COMPONENT: 5648D0431 / COMMON SERVICES PMR NUMBER: 47516,075,724 APAR DESCRIPTION: FIX DESCRIPTION: ************************* APAR NUMBER: IR47777 COMPONENT: COMMON SYSTEM ADMIN PMR NUMBER: 77062,122,000 APAR DESCRIPTION: In CM71 SysAdmin client, after the user clicked the users node in the tree, the cursor became Wait cursor. But the Wait cursor was reset to Default cursor before all the users were displayed in the content pane. FIX DESCRIPTION: In com.ibm.stlsa.common.sajCmnTreeUI class, set WaitCursor before repaint the icons in the content pane. Reset to DefaultCursor after the completion of the repaint. ************************* APAR NUMBER: IR47882 COMPONENT: 5648D0421 / LIBRARY SERVER APAR DESCRIPTION: Performing an update operation on a object within a transaction puts a lock on the checkout table for that item. This blocks other queries for that item. Fix Description: Moved the checkout query to a different package with a different isolation level. Special Install Instructions: There is a new bind file (frnollq6.bnd) that is created by this fix. Make sure the new bind file is copied to the BIND directory of the CM install directory. ************************* APAR NUMBER: IR47953 COMPONENT: CM SYSTEM ADMIN PMR NUMBER: 55856,122,000 APAR DESCRIPTION: The database table being dropped unnecessarily when updating some fields other than attributes in an Index Class. FIX DESCRIPTION: In the sa.client.SajcFRIndexClassDialog class, modified the code to make sure that only the value 1 is passed for ClassOptions if the attributes have been changed. A value of 1 for ClassOptions will cause table to be dropped. Another bug causing the table to be dropped inconsistently has been located and fixed also. The bug was caused by the maxVersionAllowed value in the GUI was not in sync with the value from the database. The code has been modified to make the GUI pick up the correct value. ************************* APAR NUMBER: IR48012 COMPONENT: 5648D0452 / CS CAPI TOOLKIT PMR NUMBER: 73679,500,000 APAR DESCRIPTION: Using the standard Content Manager client (vic.exe), message 'FRN6531A You cannot open the history log' is seen by users on some machines when trying to open the History Log. The same user (using the same userid) can successfully retrieve the history log on other machines. Folder Manager trace shows an Ip2ListHistory call with ulRC = 6288 (A library client call within a folder manager function was not successful), and a ulExtRC = 9107 (The element handle is not valid). FIX DESCRIPTION: In retrieving the history log with event type parts, prior to the LibRetrieveItemPart() call, added two more calls, LibAllocateItemPart() and LibNameItemPart(), to associate the part into an entry in the element table. Later on when the retrieve order is launched, the Daemon can uniquely identify the correct entry in the element table that corresponds to the event part being retrieved, so the retrieve will be successful. ************************* ************************************ Fixpack 710.7 ************************************ APAR NUMBER: IR47838 COMPONENT: 5648D0452 PMR NUMBER: 04676,130,702 APAR DESCRIPTION: In Folder Manager simLibLogon code, #of workbaskets and workflow are 3000 maximum separately. This is too restrictive for customers. A higher limit, like 30000 is needed for both. FIX DESCRIPTION: Increased both limits to 30000 from 3000. ************************* APAR NUMBER: IR47744 COMPONENT: Library Server PMR NUMBER: 60589,010,678 APAR DESCRIPTION: Content Manager 7.1 for AIX supports multiple instances of the library server. There exists no documentation on proper setup of such a configuration. FIX DESCRIPTION: CM v7.1 will allow you to run two instances of the same version of the library server on the same machine. You will install the library server code as you would as normal. You will need to create two different databases for the library server. The database names must be different. You may have the two library server databases in the same instances or different instances. You will need to create an entry in the network table for both of these servers in the network table. Use the network table generation utility to accomplish this. The index class and the view search dlls for each server will be placed in a different directory. The location of these dlls will be as follows: [FRNLOCAL]\[DB Name]\dll. On AIX, you will have to define two different users to administer each server. You must also run frnconfig.lib and frnstart.lib commands as normal for each of the servers. ************************* APAR NUMBER: IR47652 COMPONENT: 5648D0452 / Toolkit PMR NUMBER: 03028,082,000 APAR DESCRIPTION: If the default install directory of the CM toolkit or client is in a directory which contains a space, then in firewall cases, specifying FRNSINGLEPROCESSCLIENT=0 will cause the application to fail to logon to the CM library server. FIX DESCRIPTION: Remove startup dependency on path. ************************* APAR NUMBER: IR47578 COMPONENT: Library Server PMR NUMBER: 09697,057,649 APAR DESCRIPTION: When processing a forced log-off order from client, there is a chance that the child process get signal 11 and cause the library server hang. FIX DESCRIPTION: During processing a forced log-off order, the child process will free a log-on instance block. There is a chance that it later refers to that block again and gets segmentation violation. Changes have been made to make sure that it never refers to that freed memory block. ************************* APAR NUMBER: IR47261 COMPONENT: Library Server PMR NUMBER: 42503,035,724 APAR DESCRIPTION: In those locales where the comma is defined as the decimal separator, a Simlibsearch results in an sql -104, an unexpected token was found. The search does not complete. FIX DESCRIPTION: Changed the code to make sure the decimal token is always "." irregardless of the locale settings. ************************* APAR NUMBER: IR47103 COMPONENT: Library Server and Object Server PMR NUMBER: 04248,370,000 DESCRIPTION: The customer installed the CM product specifying that a remote Oracle database was to be used. It was found that the services registry entry for the CM server service incorrectly included the start of the Oracle database server service in it's dependency list. FIX DESCRIPTION: The CM server service registration module - frnnsvin.exe will prompt the user for the location of the Oracle database, if the database is remote, the CM server service will be registered as a Windows service without any dependency. Users with a remote Oracle database should run the frnnsvin.exe to re-register the service. The new registry entry for the CM server service will not have dependency in it. Users with a local Oracle database, there is no need to run the new frnnsvin.exe. ************************* APAR NUMBER: IR46956 COMPONENT: Object Server PMR NUMBER: 15980,519,000 APAR DESCRIPTION: Content Manager 7.1 with an Oracle database gets a "FRN7468A: The system cannot start the database. SQL code = -1033" during startup of the service. The return codes -1033 is from Oracle. This code is return in this case because the Oracle service is not ready to accept a logon request. The Content Manger service had correctly identified the Oracle service as a dependency. However when the Oracle service reported to the NT service manager that it had completed the initialization and the Content Manager service was started. The database was not ready to accept the SQL connection that the Content Manager service sent. This caused the Content manager server to fail to start. FIX DESCRIPTION: Two system environment variables have been added to control how long the CM server will wait for Oracle processes to start. The first environment variable (FRN_ORA_NUM_LOOPS) determines how many times we check to see if oracle server has started. The second environment variable (FRN_ORA_WAIT_TIME) determines (in seconds) how long we wait. For example, if FRN_ORA_NUM_LOOPS is set to 3 and FRN_ORA_WAIT_TIME is set 30. We will check for Oracle startup 3 times every 30 seconds. In this case, the total wait time will be 90 seconds. FRN_ORA_WAIT_TIME specified how many seconds to wait FRN_ORA_NUM_LOOPS specified how many times to check After setting these two system environment variables, the user may need to reset the STARTUP_TIMEOUT in the service registry entries for the CM servers. The STARTUP_TIMEOUT value should be greater than the total wait time set by the two environment variables. ************************* APAR NUMBER: IR46737 COMPONENT: 5648D0452 (C API Toolkit Win) PMR NUMBER: 92447,101,616 APAR DESCRIPTION: Custom application using EIP api's to aix cm712 toolkit and library allows an user defined with viewonly privileges to update and delete library database records. FIX DESCRIPTION: We removed privilege bits 110, 111, 112, 113, from OIM_SA_USER, and added privilege bits 56, 57, 58 to OIM_SA_WORKBASKET and OIM_SA_WORKFLOW, and added privilege bits 110, 111, 112, 113 to OIM_CHANGE_INDEX_CLASS. REFERENCE DOCUMENTATION: Users have to apply this APAR fix first, then delete all existing privileges, and redefine them using sys admin before they get the benefit of this APAR fix. ************************* APAR NUMBER: IR46704 COMPONENT: 5648D04B2 PMR NUMBER: 56649,019,000 APAR DESCRIPTION: If the DLL's are missing for AVT00004 and AVT00005 with SBTCLASSDEFS showings DLLSTATUS = 0 (proper build), the customer will be unable to create proper index class definitions. FRN8517A with RC = 6056 will be received by the client when attempting to create a new index class, however the sysadmin client will allow creation of parital index class definitions in the library server database. The newly defined index class will not function properly since definitions will be missing from tables AVT00004 and AVT00005. FIX DESCRIPTION: Add transaction manager, if any step is not successfull the database will rollback. ************************************ Fixpack 710.6 ************************************ APAR NUMBER: IR46955 / Windows COMPONENT: 5648D0422 / Library Server PMR NUMBER: 15980,519,000 APAR DESCRIPTION: Content Manager 7.1 with an Oracle database gets a "FRN7468A: The system cannot start the database. SQL code = -1033" during startup of the service. The return codes -1033 is from Oracle. This code is returned in this case because the Oracle service is not ready to accept a logon request. The Content Manger service had correctly identified the Oracle service as a dependency. However when the Oracle service reported to the NT service manager that it had completed the initialization and the Content Manager service was started. The database was not ready to accept the SQL connection that the Content Manager service sent. This caused the Content manager server to fail to start. FIX DESCRIPTION: Two environment variables have been added to control how long the CM server will wait for oracle processes to start. The first environment variable (FRN_ORA_NUM_LOOPS) determines how many times we check to see if the oracle server has started. The second environment variable (FRN_ORA_WAIT_TIME) determines (in seconds) how long we wait. For example, if FRN_ORA_NUM_LOOPS is set to 3 and FRN_ORA_WAIT_TIME is set 30. We will check for oracle startup 3 times every 30 seconds. FRN_ORA_WAIT_TIME specified how many seconds to wait. ************************************ Fixpack 710.5 ************************************ APAR NUMBER: IR46025 / Windows COMPONENT: C API Toolkit PMR NUMBER: 03388,742,758 APAR DESCRIPTION: Custom written user application terminates with a Dr. Watson error message indicating module frnndamn.exe, and text of: 'Exception: Access violation (0xc0000005)'. The application is used to load data into CM. Increasing FRNHEAPSIZE delays the access violation, setting it very small causes it to happen almost immediately. Tracing the application revealed that the access violation is actually in frnnslap.dll (which is a part of frnndamn.exe). This appears to be a memory leak in folder manager. FIX DESCRIPTION: 1. Daemon has been changed to handle error correctly when no more memory is available instead of continuing, and thus causes the crash. 2. Folder Manager API, SimLibAddFolderItem, and several other API's, has been changed to always free the response block regardless of return code is good or bad. This will avoid memory leak when error occurs. ************************* APAR NUMBER: IR45075 / AIX & Windows COMPONENT: Object Server PMR NUMBER: 27196,379,000 APAR DESCRIPTION: CMv71 Object Server reported a sql return code from DB2 as an application problem and did not report a severe error FIX DESCRIPTION: CMv71Object Server now reports the sql error as severe. ************************* APAR NUMBER: IR46768 / AIX & Windows COMPONENT: dbmigration APAR DESCRIPTION: The database migration utility does not take into consideration non-english languages with regards to attribute names. There are several different error messages the customer will receive depending on the error condition. Some examples include: Error in module 'ModifySBTFOREIGNPARTSNMS()', line #681: Error in module 'ModifyFRNSearchIC()', line #702: Affects: Windows and AIX platforms, db2 and oracle migration utilities for Content Manager 7.1 FIX DESCRIPTION: The migration utility has been modified to account for a non-standard CM tablespace in Oracle and the use of a LIKEclause instead of equality check for NLS keyword names (to accommodate for the * prefix). Also, SQL return code is always displayed in case of error for better diagnosis of future problems. SPECIAL INSTALLATION INSTRUCTIONS: As always, the migration utility must be copied from the CD-ROM into a local temporary directory with read/write privileges. The directory into which it is copied must reside on the system with the Library Server to be migrated. For DB2, the bind file must also be copied into the same directory as the migration utility executable. REFERENCE DOCUMENTATION: Planning and Install Guide, migration section for general migration instructions. ************************* APAR NUMBER: IR46225 / Windows COMPONENT: JSA PMR NUMBER: 14261,122 APAR DESCRIPTION: Environment: cm71 nt system admin. Customer has multiple user groups which when displayed in the list box for the user properties, requires the list to be scrolled in order to view the entire list. If the customer wishes to add an user to an user group that requires the list to be scrolled, the customer has found that after scrolling the list, depressing the cntl key/highlighting the user group to be added, and then clicking on the "apply" key, that the list scrolls back to the original view of the list. In contrast, the VI v24 system admin would remain on the same view of the displayed list. This appears to occur only on the selection of the first assignment of an user group during a session. FIX DESCRIPTION: Fix the code related to the user group list. ************************* APAR NUMBER: IR47111 / Windows COMPONENT: JSA PMR NUMBER: 46253,122,000 APAR DESCRIPTION: Inconsistent data in System administration client. Number of users selected is not showing correct number. FIX DESCRIPTION: Fix FindWidget to show the correct number of users selected. ************************* APAR NUMBER: IR46952 / Windows COMPONENT: Common Services PMR NUMBER: 17131,180,000 APAR DESCRIPTION: FRNHEAPSIZE value in RunTimeParms registry entry does not work and has no effect on server services FIX DESCRIPTION: Change code to use the registry value instead of the global env variable setting for FRNHEAPSIZE ************************* APAR NUMBER: IR45069 / AIX & Windows COMPONENT: Object Server PMR NUMBER: 27196,379,000 APAR DESCRIPTION: Customer was receiving FRN9006A, FRN9927A and FRN9919A in frndiag.log on retrieve. The trace uncovered that the trigger for the FRN9006A was 'CreateFileMapping RC: 8>'. The actual cause was that the file returned from ADSM was smaller than what was expected. FIX DESCRIPTION: Utilization of the supported ip2toccount api (as used by the vi client application) to determine the count of items in a workbasket results in a lengthy response time when the number of items and workbaskets is large. ************************* APAR NUMBER: IR44519 / Windows COMPONENT: System Administration PMR NUMBER: 08852,075,724 APAR DESCRIPTION: Userexit dll names should be restricted to length of 8 characters to avoid confusing errors FIX DESCRIPTION: Modify dialog to not allow more than 8 characters in userexit dll name SPECIAL INSTALLATION INSTRUCTIONS: Save original versions of frnnsacl.jar and frnnsacld.jar, and then copy the new versions into the saclasses subdirectory of the CM install directory. ************************* APAR NUMBER: IR45001 / AIX & Windows COMPONENT: C API Toolkit APAR DESCRIPTION: A CM user is created with privilege bit 15 cleared, which should allow filtering of search results to exclude all documents that the user does not have access to. However, when a search is done, a folder manager trace shows that it fails on a SimLibGetTOCData call with RC = 6238. The client (vic.exe) does not have the capability of filtering this way. This APAR is being opened per development to fix this problem in the folder manager. FIX DESCRIPTION: Change the SimLibGetTOCData source code to continue processing (instead ofreturning error return code 6238) when there is no information returned from Library Server for aspecific itemID that this user has no authority to access. In this case, the returned SNAPSHOTSTRUCTdata structure for this itemID is empty other than the itemID itself. ************************* APAR NUMBER: IR45020 / Windows COMPONENT: System Administration APAR DESCRIPTION: Password duration should be restricted to no greater than 12000 days due to Library Server's limitation. FIX DESCRIPTION: Modify dialog to set the maximum value of Password duration to 12000 days. ************************************ Fixpack 710.3 ************************************ APAR NUMBER: IR42485 / Windows COMPONENT: 5648A08B2 APAR DESCRIPTION: Database utilities do not always run when scheduled. 'Start Now' appears to work. The customer is running the C sysadmin on 2.3 (NT). Because I did not realize this, I tested using the Java sysadmin on 2.4 but got similar results. I tried several database utilities and got inconsistent results. FIX DESCRIPTION: Fixed the logic relating to non-daily schedules. ************************* APAR NUMBER: IR43090 COMPONENT: OS PMR NUMBER: 64570,519,000 APAR DESCRIPTION: After the migrator migrates an objects into a storage class, it will set the OBJ_ACTIONDATE (the next migration date) to a new date which matches the retention period, for example, if the retention period of the destination storage class is set to 60 day, then after migrating into this storage class, the OBJ_ACTIONDATE of an object will be set to 60 days from the current date. This means, during the next 59 days, the migrator will bypass this object when selecting candidates for migration. If the retention period has been set as "FOREVER", than after the migration, the OBJ_ACTIONDATE will be set to 12/31/9999, which means that the migrator will never consider it again as a potential candidate for migration. During every migration cycle, the migrator will "look" at any object with OBJ_ACTIONDATE set to the current day or early, and decide is the object due to migrate. Currently, unless the user set the retention period of a storage class to "FOREVER" or to a date before the year 2038 (some 13000+ days from now), the OBJ_ACTIONDATE of the migrated object will be set incorrectly to the next day. As more and more objects been migrated to the storage class with the wrong action date set, the migrator will waste most of the migration cycle time looking for objects that need not be migrated at all. Eventually, in some extreme case, all the migration cycle time are wasted, and there is no time left for any real object migration in the migration cycle. The migrator is using the ANSI C's time() function to compare two dates, but the time() function always return a negative value for any date after Jan 18, 2038, and this negative time will confuse the migrator and make it to set the next migration date incorrectly. FIX DESCRIPTION: The fix put in a check for the negative time returned from the time() function, and will set the next action date to 12/31/9999 in this case. So, if the user set the retention date of a storage class in the migration policy after Jan, 2038 (for example, from 13000+ to 32000 days) it will be treated as FOREVER. ************************* APAR NUMBER: IR44885 COMPONENT: LS / 5648D0431 APAR DESCRIPTION: If configuring a CM system such that the CM application is outside a firewall (i.e. a network table entry for the client daemon was added to the network table) searches to the library server, and perhaps even logon to the library server will fail with an out of memory condition. There should also appear rouge frnndamn.exe processes after each stop and restart of the application. This fix requires the user to specify the FRNSINGLEPROCESSCLIENT environment variable when configured to use a firewall. In addition to this fix, the application writer should consider making sure that all retrieval of objects are placed into files rather than into memory, thus avoiding memory full conditions. Error number 9126 (FRN9126A) will be logged in the client frndiag.log as a result of this failure. FIX DESCRIPTION: CM disconnect/exit processing was changed to use exit lists rather than destructors, changing the order in which CM would cleanup. ************************* APAR NUMBER: IR45219 / Windows COMPONENT: LSs / 5648D0432 PMR NUMBER: 08850,075,724 APAR DESCRIPTION: If the NT user name that the system is running under is more then 15 characters long the allocation of shared memory fails. This is displayed in the client application by the logon panel failing to show any servers in the listbox. If the Isolator (FRNNLIIS.exe) is started in the foreground it immediately ends. FIX DESCRIPTION: Increase the internal buffer that holds NT logon name. ************************* APAR NUMBER: IR45362 COMPONENT: OS / 5648D0411 PMR NUMBER: 50501,032,724 APAR DESCRIPTION: Object server reports FRN9919A, FRN9883A on retrieval of an object, followed by an abnormal termination of the FRNXLBPR process, FRNsysSignalHandler, this process received a signal 4. Problem appears to be similar to symptom described in VI v24 apar IR42465. FIX DESCRIPTION: fix lbsretriev.c lbsmigra.c, and lbscomm.c. Filter out the zero size file. ************************* APAR NUMBER: IR45507 / Windows COMPONENT: dbmigration APAR DESCRIPTION: The migration utility shipped in CM 7.1 Windows (frnnmiut.ORACLE.exe) does not run under Oracle 8.1.6. There is no data loss as a result. Users will see a dialog pop-up on their screen saying that the "sqllib80.dll" could not be found. This APAR will include the necessary makefile switch to add Oracle 8.1.6 compilation similar to the change that was made for various library server DLL's. This also includes a small #ifdef code change in the frnpmiut.ccc source file. FIX DESCRIPTION: Makefile was changed to include Oracle 8.1.6 switch for separate compilation of LS migration utility and #ifdef was added to source code. This change will allow customers running Oracle 8.1.6 to utilize the LS migration utility. SPECIAL INSTALLATION INSTRUCTIONS: Customers should follow same instructions previously documented but note that the 816 version of frnnmiut.ORACLE.exe will be in the orautil\816 directory on their CD. As before, customers should copy the file to a local directory with read/write permission before executing. Also, note that this was fix was included in CM71fp2 but not documented until fixpack3. ************************* APAR NUMBER: IR45599 / Windows COMPONENT: JSA / 5648D04B2 PMR NUMBER: 85534,519 APAR DESCRIPTION: Using the instructions outlined in the Content Manager System Administrator's Guide to create users using the batch command facility. User enters the following command and gets a response that it cannot parse the supplied options: frnnsacld.exe SajcBatch -u user_list.lst -p default.pro -e log Unrecognized option: -u Unable to parse 1.2 format supplied options - rc=-6 Usage: frnnsacld.exe -options sa.client.SajcAdmin args... (to start the system admin) FIX DESCRIPTION: Fix code to enable frnnsacld.exe to invoke SajcBatch in order to create users using batch command. ************************* APAR NUMBER: IR45703 COMPONENT: TK / 5648D0452 APAR DESCRIPTION: AIX frnxdamn process will end with an exception when running with Multithreaded applications like Dynamic Page Builder and EIP. The problem is no limited to these applications and could occur with any AIX application. FIX DESCRIPTION: A zero file handle(0) is considered valid during object store and retrieve within the object server on AIX. ************************* APAR NUMBER: IR46071 COMPONENT: LS PMR NUMBER: 03486 APAR DESCRIPTION: In the 'Selected' pull down in the sysadmin are three utilities (Optimize, History, Expired time). Using the Optimize utility for testing, once it is set, it can not be unlocked. It appears to take the update but a subsequent logon displays the same scheduled status. FIX DESCRIPTION: Provided a new pgm to delete the utility schedules. SPECIAL INSTALLATION INSTRUCTIONS: For DB2: Issue the following commands to bind the package: db2 connect to db2 bind utpschd.bnd ************************* APAR NUMBER: IR46471 COMPONENT: 5648D0452 PMR NUMBER: PMR 46692,019 APAR DESCRIPTION: The nhttp.exe application on the Notes server was crashing causing the Domino server to fail. The DLL involved is the FRNNDAPI.dll. This is to handle CM crash problem. This problem can occur on CM 6.1 and CM 7.1.This problem can occur on CM 6.1 and CM 7.1. FIX DESCRIPTION: In DmnGetResponse function, added semaphore protection before the SymDeleteSymbol() function call, and release the semaphore after the call. This way there will be no interruption between different threads on the symbol table. SPECIAL INSTALLATION INSTRUCTIONS: 1. Rename FRNROOT\DLL\frnndapi.dll to something else. 2. Apply the new frnndapi.dll to the same directory as above. 3. Bring up your application and try again. ************************* APAR NUMBER: IR46541 / Windows COMPONENT: OS APAR DESCRIPTION: OBJECT SERVER FILENAME GENERATION RESULTS IN DUPLICATE NAME BEING GENERATED. FRN9825A WITH RC=9740 Customer receives numerous FRN9825A, lbsgeneratefilename api generated filename xxxxx.xxx rc=9740 on destage to optical. FRN9740a indicates that an adsm/tsm api failed. A subsequent tsm client trace showed that the error code returned by the tsm server was that the name already existed. This was verified in the object server's BASE_OBJECTS. The object was eventually destaged with no problems in a subsequent destage cycle, result- ing in a different 8.3 name being assigned. FIX DESCRIPTION: When duplicate retry reach the limit reseed the random number ************************* APAR NUMBER: IR46771 COMPONENT: LS PMR NUMBER: 36410,075,724 APAR DESCRIPTION: The following message is posted at the object server: <2001-06-27 10:43:43.10 Type: ERRLOG File: lbsdb.c Line: 8984 Func: LbsUpdateTargetObjectRowReplace RC: -911 MsgCode: 9861> FRN9861A:Database operation type UPDATE for the LAN-based object server finished. Return code = -911. <2001-06-27 10:43:43.30 Type: ERRLOG File: lbsdb.c Line: 8798 Func: LbsFetchSourceObjectRowReplace RC: 100 MsgCode: 9861> FRN9861A: Database operation type FETCH SOURCE for the LAN-based object server finished. Return code = 100. FIX DESCRIPTION: Removed the deadlock retry logic from the library server. It was causing problems with the transaction commit scope on the object server. ************************* APAR NUMBER: IR46843 COMPONENT: LS / 5648D0432 APAR DESCRIPTION: If configuring a CM system such that the CM application is outside a firewall (i.e. a network table entry for the client daemon was added to the network table) searches to the library server, and perhaps even logon to the library server will fail with an out of memory condition. There should also appear rouge frnndamn.exe processes after each stop and restart of the application. This fix requires the user to specify the FRNSINGLEPROCESSCLIENT environment variable when configured to use a firewall. In addition to this fix, the application writer should consider making sure that all retrieval of objects are placed into files rather than into memory, thus avoiding memory full conditions. Error number 9126 (FRN9126A) will be logged in the client frndiag.log as a result of this failure. FIX DESCRIPTION: Removed the attempt to autodetect a firewall configuration and autostart the daemon process. The administrator is required to set FRNSINGLEPROCESSCLIENT. SPECIAL INSTALLATION INSTRUCTIONS: In a firewall configured environment: Determine if there is to be more than one application process on the client workstation. 1) If multiple applications are to be run on the workstation specify in the system environment variables or setup scripts: FRNSINGLEPROCESSCLIENT=0 and increase FRNHEAPSIZE to 2048 or higher. If out of memory conditions still occur, preferably, the application writer should, consider making sure that all object retrievals are placed into files rather than into memory or increase the FRNHEAPSIZE setting, thus avoiding memory full conditions. 2) Otherwise, when only one application process exists on the workstation, specify FRNSINGLEPROCESSCLIENT=1 and leave the default FRNHEAPSIZE setting. ************************* APAR NUMBER: IR46900 COMPONENT: TK PMR NUMBER: 14826,010,618 APAR DESCRIPTION: The Library Client API set is a published, supported interface to the Content Manager servers. To get the correct column width regardless of data type (IE: when using the LibGetQueryReplyInfo call), DmnFieldWidth found in FRNNDAPI.LIB must be used IF any multi-value attributes are used and multiple values are stored. FRNNDAPI.LIB and the associated header file were not shipped with CM 7.1. FIX DESCRIPTION: Update the file groups/filesets to install the missing file. ************************* APAR NUMBER: IR46902 COMPONENT: OS / 5648D0411 PMR NUMBER: 46832,519,000 APAR DESCRIPTION: CM71 VALIDATION REPORT RESTORE CAPABILITY FOR TYPE 7 DISCREPANCY RESULTS IN A SIGNAL 11. CM71 aix validation utility correctly identifies a type 7 discrepancy, however when the restore function is selected, the process ends with a signal 11 on the replication request. FIX DESCRIPTION: Change replicator program, new frnxrepli created.. Customer need to apply this new module. ************************************ Fixpack 710.2 ************************************ APAR NUMBER: IR46521 COMPONENT: Object Server APAR DESCRIPTION: When customer select userid properties to reset password. They would highlight the password field, type the new password, then choose ok. The 1st character of the password would get lost.. I ************************* APAR NUMBER: IR44486 COMPONENT: Library Server APAR DESCRIPTION: Customer had a Content Manager V6.1 Library Server "hang". Analysis of the frndiag.log showed the following message: ..... 2000-10-12-12.33.45.066090 Instance:FRN Node:000 PID:26404(frnxllch) Appid:none LIBRARY SERVER LL Probe:1 <2000-10-12 12:33:45.06 Type: ERRLOG File: frnpllch.c Line: 1833 RC: 7474 MsgCode: 7474> FRN7474A: An internal system problem occurred. ..... The FRN7474A is issued by frnpllch at this point because there is an error in receiving an order from the isolator api that we call. This APAR is created because the error code that is returned is not captured in the FRN7474 message. FIX DESCRIPTION: Changed the log statement to log the IsoReceive error message. ************************* APAR NUMBER: IR44489 COMPONENT: System Admin APAR DESCRIPTION: Expired time is locked by the last person/userid who logged onto sys admin... Customer has to logged on sys admin, then log off and log on again to have the rights to update/change expired time.expired time is suppose to be locked by the last person who updated not the last userid/person who logged onto sys admin.side note: expired time, once enabled can't be disabled. FIX DESCRIPTION: When scheduling a utility, we were using the logged on userid and not the scheduler userid. ************************* APAR NUMBER: IR44259 / Windows COMPONENT: Library Server APAR DESCRIPTION: Jobber dies from DLL build processing making the library server unavailable. This is due to the size of the .sqc file exceeding a limitation in memory usage. FIX DESCRIPTION: Processing a very complex search on a database can overflow our 10k buffer search clause. I have modified the code to check the complexity of the search being processed. If the complexity is above a certain level, we will not try to process that search. ************************* APAR NUMBER: IR44109 / Windows COMPONENT: Library Server PMR NUMBER: 84765,019,000 APAR DESCRIPTION: No trace output from frncmd if utility encounters an error. To trace the execution of the frncmd utility, the batch file that starts the utility ( frnnstcu.bat ) needs to be updated. Once the updates are made and the batch file is executed, the trace starts as expected. But if the utility ends with an errorlevel of '1', the statements in the batch file to format and turn off the trace are bypassed, and the trace is lost. FIX DESCRIPTION: Moved the code to format and stop the trace to cm exit function. ************************* APAR NUMBER: IR45048 COMPONENT: Library Server APAR DESCRIPTION: The Library Server does not issue an error message if the wrong userid is used to start it. If the wrong userid is used to start the Library Server, it initializes and presents the user with the "Accepting Requests" message. However, users get error message " FRN6740A: The logon was not successful because of error 6056 " when they try to log on. The system admin client gets a " FRN8571A: =6056 " message. The frndiag.log shows -204 SQL return codes (undefined name). To determine the correct userid, open the DB2 control center and view the Library Server database tables. The schema name is the userid that should be used to start the Library Sever. The Object Server issues the following error message when started with the wrong userid: FRN9745A: Unable to update database, because it is the incorrect database version, -1. FIX DESCRIPTION: Added a dynamic sql query that will fail under the wrong id ************************* APAR NUMBER: IR41685 / Windows COMPONENT: Library Server APAR DESCRIPTION: Warning errors from DB2 during a PREPARE for a dynamic query when retrieving an object resulted in a failure of the retrieve. FIX DESCRIPTION: In the case of receiving a warning code during a PREPARE, log the SQLCODE but attempt to continue the processing (it more often then not will be successful). ************************* APAR NUMBER: IR43485 / Windows COMPONENT: Library Server APAR DESCRIPTION: Warning errors from DB2 during a PREPARE for a dynamic query when retrieving an object resulted in a failure of the retrieve. FIX DESCRIPTION: In the case of receiving a warning code during a PREPARE, log the SQLCODE but attempt to continue the processing (it more often then not will be successful). ************************* APAR NUMBER: IR46025 COMPONENT: CS CAPI Toolkit APAR DESCRIPTION: Custom written user application terminates with a Dr. Watson error message indicating module frnndamn.exe, and text of: 'Exception: Access violation (0xc0000005)'. The application is used to load data into CM. Increasing FRNHEAPSIZE delays the access violation, setting it very small causes it to happen almost immediately. Tracing the application revealed that the access violation is actually in frnnslap.dll (which is a part of frnndamn.exe). This appears to be a memory leak in folder manager. FIX DESCRIPTION: 1. Daemon has been changed to handle error correctly when no more memory is available instead of continuing, and thus causes the crash. 2. Folder Manager API, SimLibAddFolderItem, and several other API's, has been changed to always free the response block regardless of return code is good or bad. This will avoid memory leak when error occurs. ************************* APAR NUMBER: IR44629 COMPONENT: Library Server APAR DESCRIPTION: OLD PROBLEM DESCRIPTION (NOT ACCURATE): Migrator fails to delete a 'D' status object. The following messages are posted: FRN9763A, FRN9763A,FRN9767A, FRN9763A FRN9763A and FRN9860A rc9763. The row in BASE_OBJECTS shows the volume where the file is located does not belong to the collec- tion. This condition was caused by two quick requests for collection changes without running destager in between the requests. In the case of this customer, collections are assigned by index class. A user reindexed the same itemid twice quick enough that destager did not have a chance to run. The second collection change used the undestaged row from the first collection change and then flagged it with 'D' status which then shielded it from the destager. The problem is that the collection change process copies the source row without altering the file name and path. It is expected that destager will do this. Destager never gets a chance so the row is left with an invalid volume path and 'D' status from the second collection change. Migrator can not mount this (ADSM) volume and fails. The impact is that there are 6 messages per error which creates a large frndiag.log and the through put of migrator can be adversely affected. --------------------------------------------------------------------------- NEW PROBLEM DESCRIPTION: Migrator fails to delete a 'D' status object. The primary message is FRN9860A rc9763 but FRN9763A and FRN9767A usually precede it. The row in BASE_OBJECTS is identified by the 'object' in the FRN9860A message which is a timestamp that replaced the original OBJ_OBJECTNAME at the time the delete status was changed. The OBJ_VOLUMEID will relate to an ADSM/TSM SMS definition that will not belong to the storage class. This condition is the result of rapid collection changes (at least two) where the original source volume was ADSM/TSM and destager is either disabled or the collection change occurs so rapidly that destager is in-between cycles. The first collection change created a 'U' status object that would normally be handled by destager. It is the second collection change that processes the 'U' status such that the odd 'D' status BASE_OBJECTS row is created. This APAR number will be used to identify this issue in CM 6.1 and 7.1 fixpacks/CSDs (AndyM). FIX DESCRIPTION: During reindex, if the object's status is 'U', there is no need to delete the file in the original storage system. ************************* APAR NUMBER: IR44519 COMPONENT: System Administration PMR NUMBER: 08852,075,724 APAR DESCRIPTION: Userexit dll names should be restricted to length of 8 characters to avoid confusing errors FIX DESCRIPTION: Modify dialog to not allow more than 8 characters in userexit dll name ************************* APAR NUMBER: IR46054 / Windows COMPONENT: JSA PMR NUMBER: 52007,180,000 APAR DESCRIPTION: The CM 7.1 System Admin Client allows you to delete the NOINDEX index class. This can be done if you select the NOINDEX index class and press the delete key. In CM 6.1, the SysAdmin client does not respond to the delete key. ************************* APAR NUMBER: IR45599 / Windows COMPONENT: JSA PMR NUMBER: 85534,519,000 APAR DESCRIPTION: ATTEMPTS TO USE CONTENT MANAGER COMMAND LINE BATCH UTILITY TO CREATE NEW USERS FAILS WITH MSG "UNABLE TO PARSE OPTIONS. Using the instructions outlined in the Content Manager System Administrator's Guide to create users using the batch command facility. User enters the following command and gets a response that it cannot parse the supplied options: frnnsacld.exe SajcBatch -u user_list.lst -p default.pro -e log Unrecognized option: -u Unable to parse 1.2 format supplied options - rc=-6 Usage: frnnsacld.exe -options sa.client.SajcAdmin args... (to start the system admin) May also see "invalid argument" using CM 6.1 Apar fix should apply to both CM61 and CM71 FIX DESCRIPTION: Fix code to enable frnnsacld.exe to invoke SajcBatch in order to create users using batch command. ************************* APAR NUMBER: IR46455 COMPONENT: CS CAPI Toolkit PMR NUMBER: 48321,090,618 APAR DESCRIPTION: If the SimLibReadAttr API call is issued with the System Attribute OIM_ID_ITEM_CREATE_TIMESTAMP, the call returns an empty string instead of the expected timestamp. FIX DESCRIPTION: If the SimLibReadAttr API call is issued with the System Attribute OIM_ID_ITEM_CREATE_TIMESTAMP, the call returns an empty string instead of the expected timestamp. A type cast was missing during an if statement comparison therefore the comparison always fail. This problem was present in the functions FM_ReadAttr and FM_WriteAttr2. Add a type cast so both data values can be compared using the same data type. ************************************ Fixpack 710.1 ************************************ APAR NUMBER: IR44458 COMPONENT: Toolkit / 5648D0452 APAR DESCRIPTION: When calling simlibsearch with the null (0 Length) search string client receives FRN6772A error message. FIX DESCRIPTION: In LibPackageHostVarValue function (in frnpllrs.c) set string length to 1 when host var's attrType is varchar and host var string is null and the usOperator is relational. ************************* APAR NUMBER: IR44921 COMPONENT: Toolkit / 5648D0452 APAR DESCRIPTION: FRN8635A - Timeout occurred waiting for the Library Server to respond to a request. The program times out at the retrieve step (ExtRC=8635). DB2 traces show that the update and retrieve are sent to DB2 as two different units of work, so the retrieve ends up waiting for the update to finish, which won't happen until the retrieve finishes. A classic deadlock / timeout situation. FIX DESCRIPTION: Depending whether we are in a transaction or not, derive the proper Library Client session handle to be used within SimLibqueryPartExtSrch. This APAR also fixes a login problem where ProcessACLRows causes an access violation during logon. ************************* APAR NUMBER: IR45091 COMPONENT: Toolkit / 5648D0452 APAR DESCRIPTION: API SimLibCreateItem cannot handle system defined attributes and failed with error FRN6216. FIX DESCRIPTION: Changed SimLibCreateItem code to allow handling of system-defined attributes. ************************* APAR NUMBER: IR45224 COMPONENT: Toolkit / 5648D0452 APAR DESCRIPTION: Customer deleted frnadmin userid and they logged on to sys admin with another userid w/ maxprivs and created a new userid called "frnadmin". The customer then logs on with the userid "frnadmin" and receives a msg saying "the password doesn't match the userid for the patron..." frndiag.log on lib srvr: Type: ERRLOG file: frnpllcn.c Line 5528 RC: 7051 Msg Code: 7051 FRN7051A: The password specified for patron FRNADMIN is not valid. FIX DESCRIPTION: LibDefinePatron() in lcporder.c module the encrypted password was set to "FED0F6C9018BCF4A". It should be "B59CC182B7BDCD01". ************************* APAR NUMBER: IR45268 COMPONENT: Object Server / 5648D0411 APAR DESCRIPTION: When performing remote object server migration from a VisualInfo or Digital Library Object Server to a Content Manager Object server, objects are migrated and placed into STAGING on the target Object Server, but no rows are created in base_objects for these objects on the target Object Server. The objects can be retrieved, but they will not be migrated to LBOSDATA due to the lack of rows for the objects in base_objects. There are no error messages issued by either the source or target OS. Remote data migration from OS/2, WinN, or AIX v241 to CM 61 or later leaves files on the Target Object Server's "staging" volume without DB entries due to a design change in transaction logic in CM61. These HOMELESS files reside on the "staging" volume and are not destaged/archived to other volumes. The customer subsequently has their "staging" volume fill up. This problem exists when the source Object Server is any release or platform (OS/2, Windows, AIX) of VisualInfo or Digital Library, and the target Object Server is on any platform with either Content Manager 6.1 with CSD1 (or later) installed, or Content Manager 7.1. CM 6.1.0 base level (without any maintenance) does not have this problem. FIX DESCRIPTION: Remote migration cleanup on CM61/71 destages/archives the HOMELESS files to other volumes and the "staging" volume then reclaims space. On the Object Server, the environment variable FRN_DESTAGEALL=1 must be set for the destager to handle these unique files. To verify if there are objects in staging that do not have a corresponding row in base_objects, do the following: - Shut down the source Object Server (if the Migrator is active, disable it, and if it's running, wait for it to complete it's cycle before issuing the shut down for the Object Sever). - Shut down the Library Server. - On the target Object Server, enable the Destager and wait for it to complete ('enabled' status) before proceeding. - On the target Object Server, determine how many read-only objects there are in staging - Run the following query to determine how many 'staging-only' files are in base_objects: select * from base_objects where OBJ_STATUS='S' - The number of objects with the read-only attribute should match the number of objects in 'S' status. If there are less objects in 'S' status than there are read-only files, then you most likely have the problem reported by this APAR. ************************* APAR NUMBER: IR45227 COMPONENT: Common Services / 5648D0432 APAR DESCRIPTION: When setting environment variable DB2CODEPAGE to a different value on a CM client system and then logging on to the server, the client receives error "FRN8180A The system cannot find either the message file or the message in the message file". FIX DESCRIPTION: CM codepage conversion relies on the DB2 OSS layer. Setting this DB2 environment variable changed the behavior of CM. We fixed it by removing the dependency on DB2CODEPAGE in CM codepage conversion. ************************* APAR NUMBER: IR45234 COMPONENT: Object Server / 5648D0412 APAR DESCRIPTION: Replication within same server had permission problems in staging volume. Subsequently the files were never replicated to the archive volume. FIX DESCRIPTION: Migrator code changed to fix this problem. ************************* APAR NUMBER: IR45320 COMPONENT: Toolkit / 5648D0452 APAR DESCRIPTION: When hObj->sVersion is not 0, any media object cannot be retrieved. SimLibOpenObject gets rc= 8682 FIX DESCRIPTION: In SimLibOpenObject code, after the LibRetrieveItemPartAsync finishes the RETRIEVE_ORDER_CL order creation, if sVersion > 0, then reset the szElementKey field in the element table using sVersion -1 as the internal version number so the szElementKey field will match the media object name sent over from the Object Server instead of unmatching object name in the element table. ************************* APAR NUMBER: IR45512 COMPONENT: Toolkit / 5648D0452 APAR DESCRIPTION: Utilization of the supported ip2toccount api (as used by the Content Management client application) to determine the count of items in a workbasket results in a lengthy response time when the number of items and workbaskets is large. While the same values to determine the same results is contained in the FRNWIPITEMS table, the values are not kept in sync with the FRNITEMS table. Subsequently, any attempts to bypass the performance issues of the api by issuing a direct sql against the FRNWIPTEMS table results in possibly incorrect information. FIX DESCRIPTION: Check if all search filters are set to ALL in MakeQueryTOCEntries function (in fipquery.c). If so, issue dynamic SQL search selection only from SBTWIPITEMS. ************************* APAR NUMBER: IR45627 COMPONENT: Toolkit / 5648D0452 APAR DESCRIPTION: After loading one or more objects into CM, either SimLibUpdatePartExtSrch or SimLibUpdateObject is called to update the content of the objects. If the size of any object is greater than 67000 bytes, SimLibUpdatePartExtSrch or SimLibUpdateObject will fail on AIX with return code = 6256, or SIM_RC_RESIZE_FAILED, and returned hErrLog = 6395, or SIM_RC_WRITEOBJECT_FAILED. If Folder Manager trace is turned on, it will report a return code of 6256 by SimLibWriteObject. As a result, the update activity fails. FIX DESCRIPTION: Function CmnRetrieveFileData called fread() incorrectly. The third parameter of fread() function call should be 1, not the size of the file. Only the second parameter should be the size of the file, but not both the second and third parameters. ************************* APAR NUMBER: IR45951 COMPONENT: Toolkit / 5648D0452 APAR DESCRIPTION: The 16-byte itemID's currently are generated by clients randomly. This may cause performance problems for customers if the number of itemId's is huge. To solve that performance problem, a Library Client user exit is created to allow users to use their own algorithms to generate new itemID's in a more sequential manner. FIX DESCRIPTION: The default userexit is a no-op function and simply returns 0 to the caller. A sample userexit (commented out) is provided in this userexit. To use the sample method, users can simply un-comment it and modify it anyway desirable by the users, and build the userexit again. So the default behavior of this userexit is business as usual, that means no impact to existing customers, unless the userexit is modified and rebuilt by the customers. User exit: LibCreateItemID (generate item ID user exit) Format: LibCreateItemId (pszItemID,pszWorkStationID,sIndexClassID,pszUserID,sSemType) PURPOSE: When an application creates an item, Content Manager assigns the item several system-defined attributes. One of those system-defined attributes is an item identifier (item ID), which is randomly created by the Library Server Client. This user exit allows you to change the way the Library Server client generates item IDs. You can use the sample in this user exit to have the library client create sequential item IDs. To use the sample, remove the comments tags in the code and recompile. You can also modify the sample code and add your own algorithms. The library client encrypts the password that is associated with the user before it is transmitted to the library server. Use LibEncryptPassword if you want to provide your own encryption algorithm or eliminate the password encryption. Note: If you don't "uncomment" the sample code, the CM library server client will create item IDs as it is originally designed to do; random ID generation. PARAMETERS: pszItemID: CHAR - input and output A parameter passed in by the internal code. pszWorkStationID: CHAR - input The character string of the host name. The maximum length for this string is 18 bytes, which includes the null terminator. sIndexClassID: SHORT - input The index class identifier. pszUserID: CHAR - input The NULL-terminated character string that specifies the password for the user ID. This parameter is not case sensitive. sSemType: SHORT - input The semantic type of the item to store. The semantic type of an item indicates its general classification. Use a 2-byte integer. The predefined semantic types are: SEMTYPE_ACL Indicates that the item is an access list. SEMTYPE_ANNOTATION Indicates that the item is an annotation. SEMTYPE_DOCUMENT Indicates that the item is a document. SEMTYPE_FOLDER Indicates that the item is a folder. SEMTYPE_HISTORY Indicates that the item contains history events. SEMTYPE_MGDS Indicates that the item contains MGDS data. SEMTYPE_NOTE Indicates that the item is a note. SEMTYPE_USER Indicates that the item is a user item. SEMTYPE_WORKBASKET Indicates that the item is a workbasket. SEMTYPE_WORKFLOW Indicates that the item is a workflow. SEMTYPE_NONE Indicates that the item has no semantic type. All other values are for use by applications. The library server does not interpret them, so they can be used by the application in any way you want to. RETURN VALUES: The function returns a value of SHORT with zero for SUCCESS and -1 for FAILURE. COMMENTS: The function is located in the FRNPLCPW.C module. In the Windows environment, the sample source code for this user exit routine is located in the \USEREXIT subdirectory of your install root directory. The LibCreateItemID function is a single function in FRNWLCPW.DLL. You can replace FRNWLCPW.DLL with your own FRNWLCPW.DLL. ************************* APAR NUMBER: IR46219 COMPONENT: Object Server / 5648D0412 APAR DESCRIPTION: Object Server Recovery deletes files not found in the database. Normally this is recommended, but in the case of APARS IR45028 and IR45268, these files will unintentionally be left in an abnormal state and are not in the database. So deleting these files before IR45268 is applied and run will permanently remove these files. FIX DESCRIPTION: The default behavior of Object Server recovery NO LONGER deletes files not found in the database. If you wish this behavior to happen, then you must set the Environment variable FRNRECDELETE=1 and run recovery to delete the files. *********************************************** 4. Documentation APAR Fixes with Descriptions *********************************************** APAR NUMBER: IR47444 COMPONENT: Object Server APAR DESCRIPTION: The CM 7.1 System Administration Guide indicates that the CM command utility, FRNCMD, with the parameters PAUSE and RESUME can be used to control user access to the library. These options are not available in CM71 or any of the earlier releases of CM. This was a carryover from the OS/2 library server and should not have been included in the documentation. FIX DESCRIPTION: In the Content Manager for Multiplatforms System Administration Guide V7.1, the following information is incorrect. The PAUSE and RESUME parameters are not available with the FRNCMD utility: Chapter 6, Stopping the servers, page 43: If transactions are being processed, you can use the command utility with the pause command to stop the server from receiving new transactions. ************************* APAR NUMBER: IR47499 COMPONENT: APAR DESCRIPTION: In the CM for Multiplatforms V7.1 manual, "Application Programmer's Guide": Chapter 8: "User rights management", the section "Using the generic marking APIs" it describes APIs and samples for watermarking. These samples and function code are not shipped with CM for Multiplatforms. It is shipped with EIP. This documentation should be removed from the CM docs and moved (with the appropriate directory references for EIP) to the EIP books. The known documents with this error are: SC26-9840-00 Application Programmer's Guide for Windows V6.1 SC26-9841-00 Application Programmer's Guide for AIX V6.1 SC27-0866-00 Application Programmer's Guide for Widows V7.1 SC27-0867-00 Application Programmer's Guide for AIX V7.1 FIX DESCRIPTION: The section "Using the generic marking APIs" should be ignored in the Content Manager books. This function is shipped with Enterprise Information Portal. ************************* APAR NUMBER: IR46244 COMPONENT: Admin APAR DESCRIPTION: CM71 online help information does not reflect (contrary to CM61 and earlier releases) that the ctrl key must be depressed in order to select/add an user to multiple user groups from the listed groups. FIX DESCRIPTION: In the Content Manager for Multiplatforms System Administration Version 7 Release 1, the following online help should be as follows: New User panel: Select the user groups to associate with the user. To select multiple user groups, hold down the Ctrl key when selecting the groups. ************************* APAR NUMBER: IR45737 COMPONENT: Admin APAR DESCRIPTION: Customer reports that the System Admin Client does not show correct data on the Staging area as system is running. They have to shut down and reboot to show correct data. The SysAdmin Client is working as designed in this case, and the customer needs to use the command interface (frncmd) to obtain this information. FIX DESCRIPTION: In the Content Manager for Multiplatforms System Administration Guide Version 7 Release 1, the following information is added: Chapter 6, Server Control, "Monitoring and controlling the servers" For AIX, or Windows NT: To monitor the current status of the staging area, use the command utility with the status command (see Command utility on page 44). For example, to monitor current status on the object server named LDVOSAIX, enter: frncmd ldvosaix status ************************* APAR NUMBER: IR46475 COMPONENT: Admin APAR DESCRIPTION: In the CM v7.1 SysAdmin Guide, Ch 11, p118, the imlclpix command is described as being used to "Remove all index entries from an existing index on the text search server." This statement is somewhat half true ... it should say "This is a cleanup function for library server consistency. This removes all index entries from an existing index on the text search server which no longer exists in a CM library server" Command line, imlclpix -h, gives the correct information. FIX DESCRIPTION: In the Content Manager for Multiplatforms System Administration Guide Version 7 Release 1, the following information is corrected: page 118, Chapter 11: Text search administration The text under the syntax diagram for "Delete Content Manager documents from an index (icmlclpix)" should read: Purpose: This is a cleanup function for library server consistency. This removes all index entries from an existing index on the text search server which no longer exists in a Content Manager library server. ************************* APAR NUMBER: IR46263 COMPONENT: Object Server APAR DESCRIPTION: The Planning and Installing Content Manager Version 7.1 manual (GC27-0864-01) discusses the need for an entry in the FRNOLINT.TBL for the client messenger under certain circumstances. (See Chapter 9, 'Configuring network communication for Content Manager components', topic 'Understanding Network Tables', sub-topic 'Client toolkit notes', page 182.) However, the correct syntax and parameter definitions for the FRNODAOS statement, and when you need to use them, are not in the in the 'Network table file syntax' section of chapter 9, which also does not document FRNODAOS as a reserved word. FIX DESCRIPTION: In the Content Manager for Multiplatforms Planning and Installing Guide Version 7 Release 1, the following information is corrected and added: Page 182, Client toolkit notes: Delete the following text: Optionally, specify the port and IP address for the client messenger to use for object storage and retrieval. Specifying the IP address is useful when the client contains multiple communications cards or when there is a router that performs NAT (network address translation) between the client and servers. In the latter case, the external address must be the IP address. And replace with the following text: In some configurations it may be desirable to place the CM toolkit and its applications on one side of a firewall while the servers are the other side of a firewall. Also, it might be desirable to choose which communications network card is to be used for object transfers to and from the object server, such that object transfer occurs on a specified network, given that the client workstation has access to multiple networks. Accommodating both such configurations is done through the creation of a local client network table entry on the client toolkit workstation. Use the network table generator to ADD LOCAL CLIENT specify Port specify IP Address In the case of a workstation attached to multiple networks, specify the IP address of the communications card that is desired for object transfer to and from the object server. Port, in this case, can be any port in the valid port range specified in In the case of a firewall, it can be somewhat restrictive. The firewall must use static NAT, and not dynamic. With static NAT, each client must have an internal ip address, known to the servers, mapped to an external ip address. With such a mapping, use the network table generator at the client toolkit workstation to add the local client definition. Specify the internal IP address. The port to be specified is usually the one in which the firewall is configured to permit. Most administrators find that using the same port number as the library server works best, given that the client machine doesn't contain a library server itself. That way, the firewall can be configured to allow traffic for that port number and it will work for both the traffic going to the library server and from the object server. Finally, in both the firewall and multi-honed configurations, on a Windows toolkit platform, the administrator must determine whether or not there will be multiple applications run on the workstation. For example, Does there exists the CM client application and a custom application, or sys admin on the workstation? This situation can be called a multi-process configuration, where multiple applications share the client configuration. Conversely, if only one application is to be run on the workstation, it is a single-process configuration. It is important to determine which environment the workstation will be running and set environment variables as follows: * single-process configuration - add FRNSINGLEPROCESSCLIENT to system environment variables setting its value to 1. * multi-process configuration - add FRNSINGLEPROCESSCLIENT to system environment variables setting its value to 0. Additionally, update the system environment variable FRNHEAPSIZE=2048. In this environment, the applications will be sharing the client messenger daemon and requests/responses to/from the library server and in some cases, objects to/from the object server will be placed in a shared memory heap. The setting of a larger shared memory heap is required. 2048 translated to 4K X 2048 = 8M of shared memory. This should be sufficient for most requests, responses, and objects. But if the application starts receiving out of memory failures, (because of large objects or larger results sets from queries), the FRNHEAPSIZE should be increased. Configuring for the default client messenger Nothing further needs to be configured in the default toolkit configuration. Page 195, add the following text to Network table file reserved words: FRNODAOS Page 195, add to definition column which states For library servers and object servers, the server name is the same as the database name. For the client messenger, the name is FRNODAOS ************************* APAR NUMBER: IR42892 COMPONENT: Object Server APAR DESCRIPTION: The message FRN9020A is used to reflect an error received from the protocol that is in use. This can TCP/IP as well as APPC. The message text needs to be changed to reflect this usage. FIX DESCRIPTION: In the Content Manager for Multiplatforms Version 7 Release 1 Messages and Codes manual, the following message is updated with TCP/IP information: FRN9020A Communications Manager/2 or SNA Server/6000 returned an advanced program-to-program communications (APPC) error or transmission control protocol/internet protocol (TPC/IP) error. Explanation: Communications Manager/2 or SNA Server/6000 issued an APPC or TCP/IP error, which caused the client or server program to stop processing. Component: Communications Isolator #Define: ISOERR_APPC_ERROR Action: Check the error logging facility to see which APPC or TCP/IP error code was issued. See the error codes in the Communications Manager/2 APPC publication or TCP/IP publication and correct the problem. ************************* APAR NUMBER: IR44174 COMPONENT: Object Server APAR DESCRIPTION: The Planning and Installation Guide, GC26-9831-00, Chapter 4, Installing Content Manager components on AIX, Step 4.Installing the object server on AIX, states the frnbind.obj should be run in #7. under the Oracle set of instructions. Development states this is not true FIX DESCRIPTION: In the Content Manager for Multiplatforms Planning and Installation Guide Version 7 Release 1 Pages 62-65, Step 4. Installing the object server on AIX Page 65, under Table 40, delete the following item (because you do not need to bind the database for Oracle): 7. If you did not create a database while using the wizard, bind your existing database. Enter: frnbind.obj ************************* APAR NUMBER: IR44499 COMPONENT: Object Server APAR DESCRIPTION: OBJECT SERVER WITH A LARGE STAGING DIRECTORY BUT NOT ON A DEDICATED SPACE WILL ENCOUNTER EXTENDED STARTUP AND RECOVERY If a large staging area is to be used, it is recommended to utilize a dedicated staging area. If the area is not a dedicated partition, the object server recovery and startup, which performs an automatic recovery, will be extended due to the large number of files that will be reviewed. Installations migrating from previous versions of Visualinfo should strongly consider implementing this option. In addition to setting STA_DEDICATED='Y' in the BASE_STAGING table, modify the value of STA_PATH to the newly defined dedicated partition. FIX DESCRIPTION: In the Content Manager for Multiplatforms Planning and Installation Guide Version 7 Release 1, the following information is added: Page 52, Step 4 Installing the Object Server on Windows, Fast object server recovery is now Fast object server startup Page 65, Step 8 Installing the Object Server on AIX, add the following information: Fast object server startup The object server should be started and shutdown once after installation. If the staging area is a dedicated space, you see that a column added to the object server table BASE_STAGING called STA_DEDICATED. This column is "dedicated" because it is only used by the object server, and only staged blobs are stored in it. To update the server: 1. Log on to object server admin user ID Example: su - osadmin 2. Connect to the object server database Example: db2 connect to objsrvrx 3. Update the BASE_STAGING database table, column STA_DEDICATED, using the following query: Example: db2 UPDATE BASE_STAGING SET STA_DEDICATED = 'Y' This command queries the file system to find out how much space is being used on the file system. This avoid a time consuming filter of the files in staging. The result is a close to constant startup time independent of the number of files in the staging area. If STA_DEDICATED is set to ¡¦N¡¦ then the startup time depends on how many files are in the staging area. Never set STA_DEDICATE to yes if the file system or partition holds files other than object server blobs. In the system administration program, do not allocate the staging space to be the size of the entire partition. Allow for some level of error as file systems report of space is not always completely usable due to overhead in the file systems. For most file systems the error is less than 10%. A good starting point for a 10,000 MB partition would be to set staging space to 9,000 MB with a purge start of 90% and a stop of 80%. These are only guidelines -- you should monitor the staging area as it approaches its full state and during periods of intense activity be able to ensure the staging file system does not get completely full at any time. If the file system is never close to being full, then the values can be increased. Destaging and purging problems might result if the values are set incorrectly. ************************* APAR NUMBER: IR46023 COMPONENT: Object Server APAR DESCRIPTION: Customer reports that Object Server start up time is 5.5 hours. The Object Server appears to be looking at every file in the staging area ( ubosstg ) which has approximately 190,000 files. FIX DESCRIPTION: In the Content Manager for Multiplatforms Planning and Installation Guide Version 7 Release 1 Page 65, Step 8 Installing the Object Server on AIX, add the following information: Fast object server startup The object server should be started and shutdown once after installation. If the staging area is a dedicated space, you see that a column added to the object server table BASE_STAGING called STA_DEDICATED. This column is "dedicated" because it is only used by the object server, and only staged blobs are stored in it. To update the server: 1. Log on to object server admin user ID Example: su - osadmin 2. Connect to the object server database Example: db2 connect to objsrvrx 3. Update the BASE_STAGING database table, column STA_DEDICATED, using the following query: Example: db2 UPDATE BASE_STAGING SET STA_DEDICATED = 'Y' This command queries the file system to find out how much space is being used on the file system. This avoid a time consuming filter of the files in staging. The result is a close to constant startup time independent of the number of files in the staging area. If STA_DEDICATED is set to ¡¦N¡¦ then the startup time depends on how many files are in the staging area. Never set STA_DEDICATE to yes if the file system or partition holds files other than object server blobs. In the system administration program, do not allocate the staging space to be the size of the entire partition. Allow for some level of error as file systems report of space is not always completely usable due to overhead in the file systems. For most file systems the error is less than 10%. A good starting point for a 10,000 MB partition would be to set staging space to 9,000 MB with a purge start of 90% and a stop of 80%. These are only guidelines -- you should monitor the staging area as it approaches its full state and during periods of intense activity be able to ensure the staging file system does not get completely full at any time. If the file system is never close to being full, then the values can be increased. Destaging and purging problems might result if the values are set incorrectly. ************************* APAR NUMBER: IR38764 COMPONENT: Library Server APAR DESCRIPTION: VisualInfo - Digital Library - trace - FRNTRC - FRNTRACE The discussion contained in Messages and Codes Chapter 3 Tracing Facility does not clearly identify the relationship of the controls (and variables) to the effect on the trace. For example, the variable FRNTRACELEV and those that follow almost seem to be unrelated to the FRNTRACE function by the way it is worded. The file 'frntrace.ctl' does not exist on NT. How does FRNLOGMAXMB relate to the -l parm for FRNTRC, and if there is no connection, what does FRNLOGMAXMB really do? OS2 is referred to repeatedly in the discussion for FRNTRACE but it is not functional on the OS2 platform for VI. FIX DESCRIPTION: In the DB2 Digital Library Messages and Codes Version 2 Release 4 manual, the following information is deleted: Page 6, Chapter 2. Tracing facility Deleted text: Tracing on AIX and Windows NT: Digital Library also provides additional features through its Independent Trace Facility (ITF) for collecting trace information. Pages 6 through 19: all information describing the following options is not valid and is deleted: * [-m mask] mask= products. event-types. components. functions * [-e maxSysErrors] Stop tracing after maxSysErrors have been recorded * [-r maxRecordSize] Truncate trace records at maxRecordSizebytes * [-rc return-code] Suspend tracing when return-code is encountered * [-p processId[. threadId]] Process ID and thread ID to trace. Thread ID does not apply to AIX. * [-c companion-id] The companion ID to trace in a server environment * [-s | -n | -mmio | -f fileName] Send trace records to shared memory, native trace facility, performance monitoring hardware, or a file * [-crash crash-mask] crash-mask = product-id. event-types. components. functions. trace-point Cause the program to exit when a specific trace point is reached ************************* APAR NUMBER: IR44974 COMPONENT: Library Server APAR DESCRIPTION: There is a need to document the limits of what the Optimization utility can be expected to do for the customer. For medium to large installations to get the best performance from the VI databases the customers' DBA will need to manage the database through the database utility functions that come with the database product FIX DESCRIPTION: In the Content Manager for Multiplatforms System Administration Guide Version 7 Release 1, the following information is added: Page 72, Chapter 9, Database installation and maintenance The optimization utility The optimization utility that is provided with VisualInfo is intended to be used for a small to a moderately sized database. This utility performs the basic optimization functions necessary to keep your server database performing optimally. As your system grows and becomes more complex, it is recommended that optimization of the server database be performed by a qualified database administrator using the tools provided by your database product. As a rule of thumb you may use the following guidelines to determine when your system has gotten to complex for the optimization tool of VisualInfo: System with more than 100K items System with more than 20 index classes System containing multiple database indexes on an index class ************************* APAR NUMBER: IR42533 COMPONENT: Library Server APAR DESCRIPTION: For the RELCRITERIASTRUCT used by Ip2SuspendItem, the doc says that itemDeadlineWB is ignored if the tsExpDateTime is NULL. TL says this isn't true and that an itemid needs to be filled in anyway (a copy of what's in itemidReadyWB should do). The doc should be modified to reflect this. FIX DESCRIPTION: In the Content Manager for Multiplatforms C Application Programming Reference for Workstation Vol 1 Version 7 Release 1 Page 930, RELCRITERIASTRUCT (Release Criteria Data Structure) RELCRITERIASTRUCT description of itemidDeadlineWB has changed to: ITEMID - input The item ID of the workbasket to send the suspended item to if the expiration time criteria are satisfied. Add the following text: This field cannot be NULL. If you want to release the suspended item due to other criteria (e.g., not deadline), then you need to copy the item ID from the itemidReadyWB or pitemidReadyWBArray to itemidDeadlineWB parameter. Delete the following text: This field is required if the usReleaseType field contains the value OIM_SUSP_ANY_CLASS or OIM_SUSP_ALL_CLASS, and if pitemidReadyWBArray has not been specified. Otherwise, this field is ignored. ************************* APAR NUMBER: IR45849 COMPONENT: Library Server APAR DESCRIPTION: Documentation in the Application Programming Guide for Windows v7.1 (APG) is incorrect concerning proper interpretation of the correct column width returned by LibGetQueryReplyInfo. with more detail of: Use the function DmnFieldWidth (in frnndapi.lib) to interpret the correct column width regardless of data type. FIX DESCRIPTION: In the Content Manager for Multiplatforms Application Programming Guide Version 7 Release 1, the following information is added: Use the function DmnFieldWidth (in frnndapi.lib) to interpret the correct column width regardless of data type. For example: if (pCol->col_type %2==1) { if (pCol->col_width<=1) return; /* Skip over the NULL byte indicator */ pbRowData++; usFieldLen = DmnFieldWidth(pCol->col_type,pCol->col_width,pCol ->col_desc_len, bFormatted) - 1; } else usFieldLen = DmnFieldWidth(pCol->col_type,pCol->col_width,pCol ->col_desc_len, bFormatted); ************************* APAR NUMBER: IR45861 COMPONENT: Library Server APAR DESCRIPTION: Content Manager v7.1 Application Programming Guide for Windows Appendix B - User Exit Routines The customer is building a SaveRecordUserExit module, and is having trouble getting the USEREXITSTRUCT to map properly to the actual data. FIX DESCRIPTION: In the Content Manager for Multiplatforms Application Programming Guide for Windows Version 7 Release 1 Appendix B, User Exit Routines, Client for Windows User Exits itemidWorkflowid field has changed from USHORT to ITEMID ************************* APAR NUMBER: IR46064 COMPONENT: Library Server APAR DESCRIPTION: Chapter 12 of 'Planning and Installing Content Manager' provides instructions for using the utility for migrating the library server database to the CM 7.1 version. The instructions state to run frnnmiut.db2.exe from the CD. This does not work. The executable and other files must be copied from the CD to the hard drive to be executed. A procedure naming what files must be moved is required and the softcopy version of the pubs should be updated. FIX DESCRIPTION: In the Content Manager for Multiplatforms Planning and Installation Guide Version 7 Release 1 Chapter 12. Migrating a Windows or an AIX Content Manager database page 237, Migrating a DB2 library server database on Windows, the following information is added to Step 2: Copy the migration utility (frnnmiut.db2.exe) and the bind file (frnomiut.bnd) into a local directory on the Library Server to be migrated. These two files must reside in the same directory, and the user must have read/write privileges in that directory. Run the migration utility from your local drive. page 242, Migrating a DB2 library server database on AIX, the following information is added to Step 2: On AIX,'su' to the LSADMIN user ID. Create a temporary directory where LSADMIN has read / write privileges. Copy all the files from /AIX/migrate/db2 and /AIX/migrate/db2/bind from the installation CD to the temporary directory (all the files must be the same temporary directory). Run frnxmiut.db2 from the temporary directory. ************************* APAR NUMBER: IR42479 COMPONENT: Library Server APAR DESCRIPTION: For both the C version (COMPID 569725044) and the Java Sysadmin, if the library server configuration is set for a single logon per user, the utilities that can be scheduled such (as expired time) will post FRN7213A. The utility requires the ability to make a second connection when the utility starts. The chapter in System Administration Guide ' System setup and system maintenance' fails to mention that library server configuration must be set for multiple sessions if you want to use the system admin. GUI server utilities. FIX DESCRIPTION: Ensure the library server configuration is not set for 'single session' in the 'Active sessions(Per UserID)' section on the 'Access' page of the library server configuration. ************************* APAR NUMBER: IR47209 COMPONENT: Library Server APAR DESCRIPTION: The customer countered he is running CM 7.1 and that the System Administration Guide says: "Restriction: If your instance of the system administration client is running through the system administration gateway, then the library server and system administration gateway must be logged on at the scheduled time for the utility to run." This is clearly a different statement and implies if the gateway is not used, then you do not have to be logged on. The customer feels the way the product works has changed and if the gateway is not being used, the user does not have to be logged on. FIX DESCRIPTION: In the Content Manager for Multiplatforms System Administration Guide V7.1, the following information is updated: In order for any of the database utilities to run at a scheduled time, the user that scheduled the utility must be logged on to the library server by way of the system administration program. ************************* APAR NUMBER: IR46134 COMPONENT: Library Server APAR DESCRIPTION: Static generation of an expression that includes the NOTIN operator successfully generates a dll, but does not include the sql with the NOTIN expression. Each subsequent submission of the same expression will generate a new static dll, each time excluding the expression. No errors are reported in the frndiag.log FIX DESCRIPTION: In the Content Manager for Multiplatforms Application Programming Guide and Application Programming Reference, the following information is added: Because of the complex nature of the query searches involving IN or NOT IN, search conditions will not be optimized to static search dlls. ********************************************* END OF README *********************************************