*********************************************************************** Content Manager V7.1.0 Fixpack 11 for AIX August 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 ********************************************* In order to install this fixpack, you must have Content Manager v71 installed (syslevel 7.1.0.0) To determine your AIX syslevel, enter: lslpp -L frn.* ********************************************* 2. Installation Instructions ********************************************* 1. Download the cm710.11.tar.gz file in binary mode to a temporary subdirectory on your workstation. You will need at least 20mb of free space. 2. To unpack the GZIP compression, enter: gzip -d cm710.11.tar.gz If you don't have GZIP, you can obtain this freeware tool from: http://aixpdslib.seas.ucla.edu/aixpdslib.html 3. Unpack the cm710.11.tar file using the AIX tar utility. For example: tar -xvf cm710.11.tar 4. Log in as root. 5. Start the Installation wizard by entering ./frnxupdate.sh 6. After the installation has completed, if you are using DB2 must rebind the databases of your library server and object server. You can rebind the server databases as follows: Library Server: logon as your library server admin id (lsadmin by default) Issue the command: frnbind.lib Object Server: logon as your object server admin id (osadmin by default) Issue the command: frnbind.obj 7. If you are using a local Oracle 8.1.7.2 server or Oracle 8.1.7.2 client with Content Manager v7.1, the installation of this CM server fixpack requires certain DLLs to be copied from the fixpack Orautil\817 directory to your /usr/lpp/frn/lib directory: Library Server: frnxllls.o frnxllio.o frnxlluq.o frnxllff.o frnxllux.o Object Server: frnxlblb.o ********************************************* 3. APAR Fixes with Descriptions ********************************************* ************************************ Fixpack 710.11 ************************************ APAR NUMBER: IR47816 COMPONENT: OBJECT SERVER APAR DESCRIPTION: CM Object Server will not start if database name non-alphabetic character. FIX DESCRIPTION: Fixed Object Database algorithm to handle special characters. ************************* APAR NUMBER: IR48981 COMPONENT: COMMON SERVICES APAR DESCRIPTION: On AIX When using the frncmd or frnstop commands, a core dump is genereated as the command is exited. FIX DESCRIPTION: Upon shutdown, check if variables are initialized before using them to perform cleanup exit processing. ************************* APAR NUMBER: IR48665 COMPONENT: TOOLKIT APAR Description: In the use of the SimLibCopyObject a local copy of the object is stored at the Client workstation in the working directory for the client application. This file is not removed from this directory after use. This eventually fills the file system and causes the Dr. Watson error. Fix Description: At the end of SimLibCopyObject, remove the temporary file in FRNROOT\work directory. ************************* APAR NUMBER: IR47981 COMPONENT: OBJECT SERVER APAR DESCRIPTION: CM Object Server intermitently fails to initialize on Oracle with certain TSM volume names. FIX DESCRIPTION: Fixed algorithm that parsed the volume information to strip invalid information. ************************************ Fixpack 710.10 ************************************ APAR NUMBER: IR46942 COMPONENT: LIBRARY SERVER APAR DESCRIPTION: The Library Server intermittently hangs during shutdown. FIX DESCRIPTION: Shutdown logic changed to avoid the failing code. Removed calls to handshake between components and avoid looping caused by memory faults. ************************* APAR NUMBER: IR47443 COMPONENT: OBJECT SERVER APAR DESCRIPTION: LBSDESTAGEOBJECT MSGCODE 9883 DOES NOT EXPOSE THE RETURN CODE DURING TRACE FIX DESCRIPTION: Program was changed to expose the ERRNO information in the Destager Trace. ************************* APAR NUMBER: IR48435 COMPONENT: OBJECT SERVER APAR DESCRIPTION: In the move of the retrieved object from the Object server to the LAN Cache server the opening of the object file fails. The order being processed is LbsProcessMoveFromOrder which fails with the 9922 message. In testing it was discovered that a sharing violation was received for the open request. On examining the trace we found the two different open requests. The initial open for the retrieve request and the second request for the move to the LAN cache server are not using compatible opens so that both processes can have access to the file. This issue is only apparent if the object being retrieved is large. This customer found it at around 900MB files. FIX DESCRIPTION: The file open attributes during a "move from" internal order were changed to an explicit shared_read. This change impacts only NT. ************************ APAR NUMBER: IR48544 COMPONENT: 5648D0411 / OBJECT SERVER APAR DESCRIPTION: Problem was caused by the CMv61 command utility application not having a large enough buffer to contain the output of the GECOS text for the AIX user. The resulting error was the AIX User information could not be read and the command utility failed to operate because of the authentation failure. FIX DESCRIPTION: Program was changed to use a larger buffer to handle the GECOS information. ************************** APAR NUMBER: IR48676 COMPONENT: COMMON SERVICES APAR DESCRIPTION: After installation of CM 7.1.0 Fixpack 9, various errors/traps and/or Access Violations can occur if FRNTRACELEV is not set to '0'. The problem shows itself during application initialization or the first time store or retrieve object is performed. On the Library Server, an Application Exception is seen in FRNNLLCH.EXE during object import. The error window has text like: "The instruction at "0x005a052a" referenced memory at "0x00000069". The memory could not be "read". Drwtsn32 shows the error to be an Access Violation ( 0xc0000005 ). The child process associated with this error is terminated. The LS could eventually stop responding if all child processes experience this error. On the production client (vic.exe), the problems shows up as no servers listed in the drop down listbox in the logon panel. On customer applications, Access Violations (0xc0000005) will occur. FIX DESCRIPTION: Removed use of uninitialized variable pointers for specific logging instruction. **************************************** Fixpack 710.9 **************************************** APAR NUMBER: IR47761 COMPONENT: Object Server APAR DESCRIPTION: The customer was saving an update to an object but received RC 6056 ExtRC 9924 through the custom client. The Library Server posted FRN7030 with an RC 9924. The Object Server logged no errors. A subsequent retrieve fails with the error analysis exposing the fact that the file on the object server is missing. The BASE_OBJECTS row for the missing file indicates it had been destaged. A trace of the object server shows in the replacement of the file, the discard order fails due to a database error and the retry also fails. Development believes the transaction processing is allowing the deleting of the original file even though the update failed. FIX DESCRIPTION: The old object will not be deleted until destager runs. ************************* APAR NUMBER: IR47817 COMPONENT: Common Services APAR DESCRIPTION: AIX applications would fail to logon with 9045 return code. FIX DESCRIPTION: The initialization of the toolkit was not threadsafe in reading in the network table. A previous APAR addressed this problem, but broke some AIX applications. Hence, threadsafe initialization was modified for the AIX CM Toolkit, such that it didn't rely on C++ constructors which failed to run in some circumstances. SPECIAL INSTALLATION INSTRUCTIONS: Any workaround, in setting FRNSINGLEPROCESSCLIENT=0 or 1, should be removed. ************************* APAR NUMBER: IR48102 COMPONENT: Content Server APAR DESCRIPTION: IP2LSTUSERS and IP2LSTUSERGROUPS limits the display of users to 10000. FIX DESCRIPTION: Increased Ip2ListUsers limit from 10,000 to 30,000. ************************* APAR NUMBER: IR48114 COMPONENT: Library Server APAR DESCRIPTION: Search on an index class with option ATTRONLY results in a termination of a child process at the library server. No coredump created. FIX DESCRIPTION: Fixed the mismatching structure definition that was causing memory corruption. ************************* **************************************** Fixpack 710.8 **************************************** 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: The frnxdamn process is not starting as a separate process in the AIX client after the install of CM 7.1.0 Fixpack 3 FIX DESCRIPTION: Altered change made for Windows Toolkit so that it doesn't apply to AIX. Hence, the AIX Toolkit will behave as it did prior to Fixpack 3 in that frnxdamn will start as a process. SPECIAL INSTALLATION INSTRUCTIONS: Any workaround, e.g. setting FRNSINGLEPROCESSCLIENT=0, should be removed ************************* 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: 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 APAR DESCRIPTION: In Folder Manager simLibLogon code, number 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 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: IR47578 COMPONENT: Library Server APAR DESCRIPTION: When processing a forced log-off order from a client, there is a chance that the child process gets signal 11 and causes the library server to 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 a segmentation violation. Changes have been made to make sure that it never refers to that freed memory block. ******************* APAR NUMBER: IR47652 COMPONENT: 5648D0452 / Toolkit 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: IR47261 COMPONENT: Library Server 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 to code to make sure the decimal token is always "." irregardless of the locale settings. ******************* APAR NUMBER: IR46737 COMPONENT: 5648D0452 (C API Toolkit Win) 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. **************************************** Fixpack 710.6 included no AIX fixes **************************************** **************************************** Fixpack 710.5 **************************************** APAR NUMBER: IR46801 / AIX COMPONENT: OBJECT SERVER / 5648D0411 PMR NUMBER: 51946,180,000 APAR DESCRIPTION: If the "gecos" information field is updated in the /etc/passwd/ for the object server osadmin account, status commands to the object server fail with errors. . Issuing the following command to the object server: su - osadmin -c frncmd OSMTXH status . Outputs the errors: FRN2021I: Session Established at Fri May 4 11:28:12 EDT 2001 FRN8095A: Error. An incorrect parameter was entered. FRN8091A: Invalid user. FIX DESCRIPTION: Fixed problem with user descriptions which caused the cmd utility to fail. ******************* APAR NUMBER: IR44982 / AIX & Windows COMPONENT: LIBRARY SERVER / 5648D0422 PMR NUMBER: 17111,519,000 APAR DESCRIPTION: An application written using the OO-API may get the following error message when trying to work with a video object: Error text: DGL0423A: The specified part object does not exist SimLibQueryObject [FRN=6056, ExtRC=9924] In this example, the getCreatedTimestamp() method was being used, which eventually gets turned into a SimLibQueryObject call, which does not work correctly for video objects. FIX DESCRIPTION: As part of retrieving an object, file manager issues a query object API. This API sends an order to the object server for SMS info. A video object does not have any SMS info so this APIreturns an error and retrieve fails. ******************* APAR NUMBER: IR47426 / AIX & Windows COMPONENT: CS CAPI TOOLKIT / 5648D0451 PMR NUMBER: 48241,000,834 APAR DESCRIPTION: The following error message is seen when initializing a multi-threaded CM application program: 2001-12-04-12.07.59.409168 Instance:FRN Node:000 PID:20164(java) Appid:none CLIENT LI Probe:1 <2001-12-04 12:07:59.40 Type: ERRLOG File: lioiso.c Line: 1372 Func: IsoSocketsInit Action: SymInstallSymbol RC: 1 MsgCode 9066> FRN9066A: A startup problem occurred in the FRNOLIIS program. Return code = 1 The return code '1' indicates that the symbol is already installed. FIX DESCRIPTION: Correct daemon and IsoInitialization processing to avoid listservers threading problem. **************************************** Fixpack 710.4 **************************************** 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. REFERENCE DOCUMENTATION: None ******************* APAR NUMBER: IR46768 / AIX & Windows COMPONENT: dbmigration APAR DESCRIPTION: The database migration utility does not take into conisderation 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 isalways 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/writeprivileges. 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: 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 lenghthy response time when the number of items and workbaskets is large. SPECIAL INSTALLATION INSTRUCTIONS: 1. Rename \frenroot\dll\frnnfios.dll to something else. 2. Copy the new frnnfios.dll to the \frnroot\dll directory. 3. Bring up your application and try again. ******************* 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: IR42801 / AIX COMPONENT: Library Server PMR NUMBER: 83284,422,000 APAR DESCRIPTION: FRNXMILE gets SQLCODE 204 due to root being used as the high level qualifier for the tables. FIX DESCRIPTION: ROOT userid hardcoded in Korn Shell script **************************************** Fixpack 710.3 **************************************** 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_ACCTIONDATE (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: 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: 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 / Windows & AIX 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 semophore protection before the SymDeleteSymbol() function call, and release the semophore after the call. This way there will be no interruption between different threads on the symbol table. ************************* 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 adminstrator 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 DISREPANCY 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. ************************* APAR NUMBER: IR45810 / AIX COMPONENT: 5648D0451 APAR DESCRIPTION: Turning off CM client default signal handler FIX DESCRIPTION: Java applications using the CM client code can now turn off the CM signal handler in order to determine their own application problems. Before running the Java application, a user should export FRNSIG=0 to turn off signal handler in CM client code. If this environment variable is not set or is set to a different value, the CM signal handler is on. Note that the detection of this environment variable occurs at application initialization time. Therefore, once the application is started, changing the value of the environment variable does not turn on or off the CM signal handler. ************************* APAR NUMBER: IR46505 / AIX COMPONENT: dbmigration APAR DESCRIPTION: In some Oracle environments, language code is not correctly stored internally after being read from an Oracle table. Problem is unpredictable and does not surface on all Oracle installations. The error has occurred in some environments and not in others. Customer will encounter an error during the execution of the migration utility for an Oracle system. Error will be similar to, "Error in module ModifyFRNSearchIC(), line ..." Migration will halt. FIX DESCRIPTION: Internal character array used to store language code expanded well beyond the 3-character language code read from Oracle table. ************************* APAR NUMBER: IR46602 / AIX COMPONENT: LS / 5648D0421 PMR NUMBER: 42028,010,678 APAR DESCRIPTION: Customer used frncrtdb.lib and frncrtdb.obj to create the Library and Object server databases CM_LIB and CM_OBJ. When they start the server, they get a message: "The server cannot be validated". If they create the database without the underscore in the name (i.e. CMLIB and CMOBJ) then they can start the servers with no problem. CM_LIB AND CM_OBJ are valid database names as DB2 UDB does allow some non-alphabetic and non-numeric characters to be used in database names. See the DB2 Quick Beginnings manual, Appendix C, Naming Rules for details. FIX DESCRIPTION: Removed the db name checking in the library server. Let it be enforced by db2 at the database creation time. **************************************** Fixpack 710.2 **************************************** APAR NUMBER: IR46504 / AIX COMPONENT: Object Server PMR NUMBER: 09795,519,000 APAR DESCRIPTION: John Rodriquez's group encountered a problem with the bind utility on the object server. This was a VI 2.4.1/UDB5.2 on AIX 433 to CM 7.1/UDB7.1 on AIX 433 upgrade. Apparently the bind was triggered at object server initialization but it failed with: <2001-06-24 00:13:36.72 Type: ERRLOG File: lbscmn.c Line: 9191 Func: LbsInitializeDBManager2 Action: LbsBindDB RC: 9981> Bind needed, attempting Bind for DB OBJSRVRX USING /usr/lpp/frn/bin/BIND/@FRNXLBLB.BSP . <2001-06-24 00:13:39.28 Type: ERRLOG File: lbsydb.c Line: 1633 Func: LbsBindDB Action: LbsBindDB RC: -40 MsgCode: 9861> FRN9861A: Database operation type Bind for DB OBJSRVRX USING /usr/lpp/frn/bin/BIND/@FRNXLBLB.BSP, sqlcode = -40 for the LAN-based object server finished. Return code = -40. . <2001-06-24 00:13:39.38 Type: ERRLOG File: lbscmn.c Line: 9210 Func: LbsInitializeDBManager2 Action: LbsBindDB RC: -40> Bind needed, attempting Bind for DB OBJSRVRX USING /usr/lpp/frn/bin/BIND/FRNXLBYD.BND . <2001-06-24 00:13:39.50 Type: ERRLOG File: lbsydb.c Line: 1633 Func: LbsBindDB Action: LbsBindDB RC: -31 MsgCode: 9861> FRN9861A: Database operation type Bind for DB OBJSRVRX USING /usr/lpp/frn/bin/BIND/FRNXLBYD.BND, sqlcode = -31 for the LAN-based object server finished. Return code = -31. The lbsmonit.h apparently has FRNXLBYD.BND in upper case while the actual file is lower case. It is believed this only fails for upgraded systems. ************************* 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 scheudling a util, we were using the logged on userid and not the scheduler userid. ************************* APAR NUMBER: IR44258 / AIX 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 canoverflow our 10k buffer search clause. I have modified thecode 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: 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 dymamic sql query that will fail under the wrong id ************************* APAR NUMBER: IR46389 / AIX COMPONENT: Library Server PMR NUMBER: 19126,519,000 APAR DESCRIPTION: The frncrtdb.lib.sh shell script calls frncrtd1.sh. If on a normal system, frncrtd1.sh calls frnxinlc.db2 to create the db tables. However, if on a DB2 EEE system, frncrtd1.sh calls frnxinle.db2. The frnxinle.db2 shell script has two problems: 1. The command to create an index on SBTFOREIGNPARTSNMS has a bad column name in the command. This causes a rc=8930, and the db creation process halts. 2. The frnxinle.db2 shell does not seem to be updated. It creates a CM v6.1 database (it shoudlcreate a v7.1 database). The new tables are missing (ie SBTCOPIES) . When the bind runs, "table not found" error messages are received. FIX DESCRIPTION: Modified the aix db create script to add the missing tables and fixed the index column names ************************* APAR NUMBER: IR43486 / AIX 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 adversly affected. --------------------------------------------------------------------------- NEW PROBLEM DESCRIPTION: Migrator fails to delete a 'D' status object. The primary message is FRN9860A rc9763 but FRN9763A and FRN9767A usually preceed 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 inbetween 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: 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 comparision therefore the comparision 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 / 5648D0451 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 / 5648D0451 APAR DESCRIPTION: FRN8635A - Timeout occured waiting for the Library Server to respond to a request. The program times out at the retreive 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 / 5648D0451 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: IR45268 COMPONENT: Object Server / 5648D0411 APAR DESCRIPTION: 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. 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. ************************* APAR NUMBER: IR45227 COMPONENT: Common Services / 5648D0431 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 / 5648D0411 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 / 5648D0451 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: IR45627 COMPONENT: Toolkit / 5648D0451 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 / 5648D0451 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. 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 / 5648D0411 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: 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 protocal (TPC/IP) error. Explanation: Communications Manager/2 or SNA Server/6000 issued an APPC or TPC/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 'Y' 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 intrepret 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 intrepret 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 proceedure 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 utilites 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 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 *********************************************