{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fswiss\fcharset0 Arial;}} \viewkind4\uc1\pard\f0\fs20 *******************************************************************************\par Content Manager V7.1.0 Fixpack 15 for AIX\par \par February 27,2003\par \par This is an interim fixpack between Formal Corrective Service Deliverables\par (CSDs).\par \par Table of Contents\par 1. Installation Requirements\par 2. Installation Instructions\par 3. APAR Descriptions\par 4. Documentation APAR Fixes with Descriptions\par *******************************************************************************\par \par *********************************************\par 1. Installation Requirements\par *********************************************\par In order to install this fixpack, you must have Content Manager v71 installed\par (syslevel 7.1.0.0)\par \par To determine your AIX syslevel, enter: lslpp -L frn.*\par \par *********************************************\par 2. Installation Instructions\par *********************************************\par 1. Download the cm710.15.tar.gz file in binary mode to a temporary subdirectory\par on your workstation. You will need at least 20mb of free space.\par \par 2. To unpack the GZIP compression, enter: gzip -d cm710.15.tar.gz\par If you don't have GZIP, you can obtain this freeware tool from:\par \par http://aixpdslib.seas.ucla.edu/aixpdslib.html\par \par 3. Unpack the cm710.15.tar file using the AIX tar utility. For example:\par tar -xvf cm710.15.tar\par \par 4. Log in as root.\par \par 5. Start the Installation wizard by entering ./frnxupdate.sh\par \par 6. After the installation has completed, if you are using DB2 must rebind\par the databases of your library server and object server. You can rebind\par the server databases as follows:\par \par Library Server: logon as your library server admin id (lsadmin by default)\par Issue the command: frnbind.lib\par \par Object Server: logon as your object server admin id (osadmin by default)\par Issue the command: frnbind.obj\par \par 7. CM 7.1 AND ORACLE SUPPORT\par \par In addition to existing product support for Oracle 8.0.3 and Oracle 8.1.6, \par fixpack 12 also provides support for Oracle 8.1.7.4. Please note that \par support for Oracle 8.1.7 is limited to Oracle 8.1.7.4 as a result of \par Oracle's urgence to all their customers to move to Oracle 8.1.7.4. \par Oracle 8.1.7.4 resolves known stability and reliability issues with previous \par versions of Oracle 8.1.7. Support for previous versions of Oracle 8.1.7 has \par been deprecated. Although we are not presently aware of any specific issues \par with other versions of Oracle, customers should note that testing has \par specifically been done only with Oracle 8.0.3, 8.1.6, and 8.1.7.4.\par \par Please also note that support refers to the machine on which the Library \par Server and Object Server codebase are installed. Thus, if the Library Server \par or Object Server database is not on the same machine as the Library Server or \par Object Server codebase, customers should assume these instructions apply to the \par machine where the codebase is actually installed. Accordingly, the level of \par Oracle which exists on the same machine as the Library Server or Object Server \par codebase must meet CM's minimum requirements for the level of Oracle you wish \par to support. For example, if you are running the Library Server codebase against \par a remote Oracle Library Server database and wish to enable CM's Oracle 8.1.7 \par support, the Oracle client machine must be at Oracle 8.1.7.4 client level and \par have Oracle Programmer components installed. The level of the Oracle Server is \par not relevant for CM purposes. Similarly, if you are running the Library Server \par codebase on a machine that also has the Library Server database (that is, Library \par Server codebase running on Oracle Server machine) and wish to enable CM's \par Oracle 8.1.7 support, you must be running at Oracle 8.1.7.4 server level with \par Oracle Programmer components installed. As always, you should be aware of any \par potential Oracle conflicts with Oracle client/server levels as well as any other \par known Oracle issues which may affect your environment. \par \par It is critical that Oracle patchsets be applied completely and correctly, \par otherwise unpredictable results may occur. For existing databases, there are \par often manual steps required by Oracle that must be taken after the patchset is \par installed to bring existing databases up to the level of the patchset. This is \par known to be the case for the Oracle 8.1.7.4 patchset and may be true for other \par patchsets as well. Follow Oracle's instructions completely and correctly to \par ensure your CM databases and Oracle product are at the proper Oracle level before \par following the procedures below.\par \par AIX ORACLE SUPPORT\par \par The default libraries installed during an Oracle installation of CM are compatible \par with Oracle 8.0.3 as well as Oracle 8.1.6. Thus, unlike Windows platforms, there are \par no additional steps required to enable Oracle 8.1.6 support on AIX platforms. We \par recommend you make sure there are no clients currently connected to CM before \par following these procedures. \par \par Oracle 8.1.7.4 support\par 1. Stop the CM Library Server, Object Server, and SMS Server. To do this, under \par the appropriate CM administrator userid, run "frnxcmd shutdown" followed \par by "frnkill.all". Stopping the Object Server will also stop the SMS Server.\par 2. Run "ps -ef | grep -i frn" to ensure there are no server processes still active.\par 3. Login as root, perform an slibclean to ensure all libraries are removed from memory.\par 4. Locate and change to the directory where you untar'd the CM fixpack.\par 5. If you are enabling Oracle 8.1.7.4 support, copy all the *.o files in ./Orautil/817 \par to your /usr/lpp/frn/lib directory after making a backup of your originals.\par \tab The ./Orautil/817 directory contains the following files:\par \tab\tab frnxlblb.o\tab\tab Object Server Shared Library\par \tab\tab frnxllff.o\tab\tab\tab Library Server Shared Library\par \tab\tab frnxllio.o\tab\tab Library Server Shared Library\par \tab\tab frnxllls.o\tab\tab\tab Library Server Shared Library\par \tab\tab frnxlluq.o\tab\tab Library Server Shared Library\par \tab\tab frnxmiut.ORACLE\tab Library Server Migration Utility\par 6. If the Object Server and Library Server are on separate AIX machines, the \par respective DLL's should be copied to each machine.\par 7. Once the Shared Libraries have been copied, you may re-start the CM services. \par Check frndiag.log to ensure they have started successfully.\par 8. The frnxmiut.ORACLE file is not required for normal CM operation. To be used \par only if you are migrating the Library Server from an earlier version of CM 7.1.\par \par 8. LIBRARY SERVER MIGRATION UTILITY ENHANCEMENTS FOR CM FIXPACK 13\par \par This fixpack introduces two major enhancements to improve the Library Server migration \par experience for customers an extensive, context-sensitive logging file that details all \par actions taken by the migration utility, and ability to create missing system index \par classes for those who initially migrated from VI/DL 2.4 or earlier on OS/2 systems. As \par before, this Library Server migration utility supports migrations from VI/DL 2.4 for \par Windows or AIX. For OS/2 systems, your Library Server database must be at VI/DL 2.4 level \par or higher to use this migration utility. Note that there are a total of 7 versions of \par this utility in the fixpack.\par \par \tab DBMS\tab\tab\tab OPERATING SYSTEM\tab FIXPACK FULL PATH\par \tab DB2 7.1 or higher\tab Windows\tab\tab\\migrate\\frnnmiut.DB2.exe\par \tab DB2 7.1 or higher\tab AIX\tab\tab\tab\\migrate\\frnxmiut.DB2\par \tab Oracle 8.0.3\tab\tab Windows\tab\tab\\migrate\\frnnmiut.ORACLE.exe\par \tab Oracle 8.1.6\tab\tab Windows\tab\tab\\Orautil\\816\\frnnmiut.ORACLE.exe\par \tab Oracle 8.1.7.4\tab\tab Windows:\tab\tab\\Orautil\\817\\frnnmiut.ORACLE.exe\par \tab Oracle 8.0.3\tab\tab AIX\tab\tab\tab\\migrate\\frnxmiut.ORACLE\par \tab Oracle 8.1.7.4\tab\tab AIX\tab\tab\tab\\Orautil\\817\\frnxmiut.ORACLE\par \par Please note that, as before, the migration utility should be copied into a local directory. \par For DB2 installations, this must also include the frnomiut.bnd bind file and the two files \par must reside in the same directory. The userid who will run the utility must have read/write \par permission for the local directory in which the migration utility was copied. Further, the \par userid must have the necessary privileges to logon to the Library Server database and \par perform various operations such as database create, update, insert, and delete operations. \par We recommend you use the Library Server administrator account. For Oracle systems, your \par tnsnames and listener files must be properly configured. To verify this, you should be \par able to logon to the Library Server database using sqlplus with the Library Server \par administrator userid and password. Assuming your ORACLE_SID is set for the Library Server \par database, you should be able to logon by typing \par "sqlplus /" from the command prompt. If you encounter \par errors while verifying this, consult your Oracle DBA or Oracle documentation for further \par assistance.\par \par Logging enhancements:\par Debugging a failed migration attempt has been made easier through the addition of extensive \par logging. A file, frnpmiut.log, will be written in the same local directory to which you copied \par the migration utility executable. This file contains a complete record of actions performed \par by the migration utility. It includes the action performed, SQL error returned, contextual \par result message (alerting you to when an error is expected or can be safely ignored), the actual \par SQL statement being executed, and the actual DBMS error message associated with the action (not \par available for Oracle AIX systems). This file will be automatically created and should be \par analyzed when experiencing migration difficulties.\par \par Oracle-specific Notes:\par For Oracle systems, please note also that there are some situations where a failed migration \par attempt cannot be recovered. As previously recommended, it is important that you retain a \par backup of your existing CM Library Server database until you are confident that the migration \par has completed successfully. The logfile will alert you to situations in which it could not \par recover from a failed migration. Users who plan to run this utility as the result of a \par previously failed migration attempt are strongly encouraged to restore their pre-migration \par Library Server database.\par \par System Index Class Toleration enhancements:\par Typing the migration utility filename with no command line inputs, will result in a display \par similiar to the following:\par \par Usage: frnnmiut.DB2 [toleration]\par (e.g.: frnnmiut.DB2 libsrvrn 0)\par = (Required) Library Server database name.\par = (Required) Oracle schema owner/userid for LS database.\par = (Required) Oracle password for userid above.\par [toleration]= (Optional) For systems originally migrated from OS/2.\par Toleration settings are as follows (0 = default):\par 0 = abort on missing system-level index classes (no toleration)\par 1 = ignore missing system-level index classes (min toleration)\par 2 = create missing system-level index classes (max toleration)\par 3 = create missing system-level index classes *ONLY*\par \par NOTE: Toleration option #3 is ONLY for customers who have already successfully migrated to \par CM 7.1. If your Library Server database is not yet at a CM 7.1 level, you should only choose \par toleration options 0, 1, or 2. If you accidentally choose option 3 before migrating your \par Library Server database to CM 7.1, you will not be to choose any other toleration option and \par will need to restore your Library Server database backup.\par \par As the usage description implies, the migration utility is now able to tolerate CM systems \par whose databases were originally based on VI/DL 2.4 or earlier systems for OS/2. In some \par cases, customers may not have system index classes that are now installed by recent versions \par of CM systems. These system index classes allow you to perform such tasks as scheduling CM \par utilities, make use of Media and Search index classes, and a sample index class. \par Specifically, the system index classes which can be created by the migration utility are \par FRN$SEARCH, FRN$MEDIA, FRN$UTSCH, and DLSAMPLE. \par \par To determine if you need the additional index classes, logon to your Library Server database \par from a DB2 command prompt or Oracle SQL*Plus and issue the following query. If the results \par do not include the four index classes listed in the preceding paragraph, you should allow \par the migration utility to create them for you.\par \tab SELECT KEYWORDSTRING FROM SBTNLSKEYWORDS WHERE KEYWORDCLASSFI=2\par \par The toleration options are described as follows:\par \par 0 or no option specified - abort on missing system-level index classes (no toleration)\par The migration utility acts as it has in previous CM 7.1 levels. If any of the four system \par index classes mentioned above do not exist, an error will be thrown. the migration utility \par will log the error, output an error to the screen, and terminate.\par \par 1 - ignore missing system-level index classes (min toleration)\par This option provides the least amount of toleration by allowing a migration to proceed even \par if the four system index classes mentioned earlier do not exist. In this case, the absence \par of any such index classes will simply be ignored. A message, however, will be logged in \par frnpmiut.log. \par \par 2 - create missing system-level index classes (max toleration)\par This option provides the greatest flexibility and is the recommended option for all users \par who need to migrate from CM 6.1 or earlier. In addition to performing a normal CM migration, \par any of the four system index classes mentioned above which are found to be missing will be \par created and automatically migrated. The frnpmiut.log file will indicate that such a \par creation has taken place.\par \par 3 - create missing system-level index classes *ONLY*\par This option is ONLY for users who have already successfully migrated their Library Server \par to CM 7.1. This option allows you to utilize the index classes described above without the \par need to re-migrate your system. Note that, if you already have a working CM 7.1 system, it \par is recommended that you back up your CM 7.1 database before proceeding. In the event of a \par failure, you can restore your CM 7.1 database and choose this option again, without having \par to perform a full migration. If your Library Server is NOT at CM 7.1 level and you choose \par this option before migrating your system, you will not be able to choose the other migration \par options later. To do so, you will need to restore the backup of the Library Server database \par and choose one of the other options first.\par \par *********************************************\par 3. APAR Fixes with Descriptions\par *********************************************\par ************************************\par Fixpack 710.15\par ************************************\par \par *************************************\par APAR NUMBER:\tab IR50610\par COMPONENT: LIBRARY SERVER\par APAR DESCRIPTION:\par The rebind command does not rebind the CM's search results cleanup utility. \par As a result, after the customer applies the fixpack, he will \par not be able to run the cleanup utility. \par \par FIX DESCRIPTION:\par If the user needs to run the utility to clean up the old search result, \par the following bind command can be entered manually \par on the command prompt after fixpack 15 is applied. \par 'bind llpsrfcu.bnd datetime iso'\par \par *************************************\par APAR NUMBER:\tab IR48543 \par COMPONENT: LIBRARY SERVER\par APAR DESCRIPTION: \par FRN7225A RESULTS IN THE STOPPAGE OF THE REPLICATOR\par Customer is recieving error message 7225 on a CM71 library server.\par As a result, the replicator treats this as a serious error and\par no longer continues to process items. The message is\par undocumented and provides little information on the symptom.\par \par FIX DESCRIPTION:\par Do not treat the 7255 as a fatal error. Log it but contnue the processing.\par \par *************************************\par APAR NUMBER:\tab IR50091A\par COMPONENT: LIBRARY SERVER\par APAR DESCRIPTION: \par FRN7449A is posted in the frndiag.log. Users may complain they\par can not log on. Users that are already logged on appear to function correctly. \par Further analysis shows frnheap starts growing at a fast rate. \par The FRN7449A appears to start occurring when frnheap\par reaches the limit of its definition (it may take more that an\par hour from the start of the heap growth to the first FRN7449A).\par \par FIX DESCRIPTION:\par The problem should only be occurred using Oracle DB.\par To bypass LLsSendQueryExprMessage() for Oracle DB. \par Then the FRNHEAP size can be stablized for Oracle. \par \par *************************************\par APAR NUMBER:\tab IR50153 \par COMPONENT: LIBRARY SERVER\par APAR DESCRIPTION:\par The customer is seeing frn7449a error messages in the log\par file for the library server. It is the frnheap that has \par been exhausted. The client application was looping trying to connect to the \par Library server with an expired token. \par \par FIX DESCRIPTION:\par After LS removed the memory leak from the connect error logic code,\par the library server correctly closed the connection to the client with the FRN7055A \par message and returned code 7055 to the client application. \par \par *************************************\par APAR NUMBER:\tab IR50157 \par COMPONENT: LIBRARY SERVER\par APAR DESCRIPTION:\par CM 7.1 LIBRARY SERVER MIGRATION UTILITY FAILS \par WHEN CREATING THE DLSAMPLE INDEX CLASS\par Content Manager 7.1.0 Fixpack 13 included a re-write of the\par Library Server database migration utilities. Running the utility\par against a database that does not have the DLSAMPLE index class\par defined produces the following errors in frnpmiut.log:\par *****\par MODULE: checkSysIndexClass() LINE: 5519 RETURN CODE: -1\par Action: Insert DLSAMPLE attribute into SBTATTRDEFS\par Detail: INSERT INTO SBTATTRDEFS VALUES (1, 448, 1, 50, 2048)\par Not available on AIX platform\par *****\par FIX DESCRIPTION:\par Further inspection of the log shows that the CREATE TABLE for\par the DLSAMPLE index class specified the table name as AVT00000,\par and also tries to define the attribute names starting with\par ATTRIBUTE00000, then ATTRIBUTE00001, etc. Using these values\par does not work.\par \par SPECIAL INSTALLATIONS INSTRUCTIONS (if any):\par The migration utility frnxmiut.DB2.exe and the bind file frnomiut.bnd \par must be copied into the same subdirectory. The migration utility \par will dynamically bind the DB2 plan using the frnomiut.bnd as input file.\par *************************************\par APAR NUMBER: IR50179 \par COMPONENT: LIBRARY SERVER\par APAR DESCRIPTION:\par The problem was caused during Basic Search on the IndexClass with multi-value \par attributes. The LS trace shown the following error msgs for Basic Search hitting \par MVA with the large result set spanning the response buffers. \par 1029 FRN fnc_data CLIENT LI (1.35.112.26)\par pid: 424, tid: 2708, cpid: -1\par <2003-01-07 10:14:21.18 Type: ERRTRACE File: Liosock.c \par Line: 987 Func: IsoSockRecv RC: 10054 MsgCode: 9093>\par .FRN9093A: The sockets function recv returned error ECONNRESET. ..\par The SIMLIBGETTOCDATA in the FMTRACE.TXT did not complete. \par \par On the Client Application Window, the following error msg was displayed: \par FRN6772A: The system cannot complete the search. \par \par FIX DESCRIPTION:\par Fixed the logic error in the area of packing the query result set with multi-value attributes.\par \par **************************\par APAR NUMBER:IR47724\par COMPONENT: Resource Manager\par APAR DESCRIPTION:\par The object server on first startup after migrating the code base\par to version 7.1 detects that the databases need to be migrated.\par If any problems are encountered during the table unload due to\par space problems with logs files, any restart of the CM migration \par fails since some tables already have been migrated.\par \par FIX DESCRIPTION:\par Enhanced error checking to ignore operations (column adds, etc.)\par that will normally fail, but are OK if the DB migration is restarted.\par \par *************************************\par APAR NUMBER:IR48519\par COMPONENT: Resource Manager\par APAR DESCRIPTION:\par Customer had manually changed REP_REPLICATETYPE to 'B' within\par the source CM71 object server BASE_REPLICATION table.\par Replication failed to take place and there was no error message\par posted to the frndiag.log that replication failed due to invalid\par rep_replicatetype.\par \par FIX DESCRIPTION:\par Problem fixed to report in the log an invalid replication status.\par Incorrect status values will be ignored.\par ***************************************************\par APAR NUMBER:IR49670 \par COMPONENT: Resource Manager\par APAR DESCRIPTION: \par AIX FILESPACE NOT MARKED FULL. FRN9816A DESTAGER ERROR\par \par FIX DESCRIPTION: \par Volume space calculations are updated to handle Volumes that are \par close to being full.\par \par ***************************************************\par APAR NUMBER:\tab IR49853 \par COMPONENT: Resource Manager\par APAR DESCRIPTION:\par Validation utility receive sig 4 after processing approximately\par 85,000 records either in one validate request or a series of\par accumulated requests. Sig 4 is recorded in the frndiag.log and\par the validation process ends abruptly.\par \par FIX DESCRIPTION:\par Clean the memory leak problem in the validation utility code.\par \par Installation:\par Back up the original frnxlbsy(AIX), or frnnlbsy(Window) and \par apply the new one.\par \par ***************************************************\par APAR NUMBER:\tab IR49907\par COMPONENT: Resource Manager\par APAR DESCRIPTION:\par Problem with file permission on CM Object Server parts being modified \par unintentionally by other applications. As a result, the CM Object Server\par Purger will incorrectly delete files that should not be removed.\par \par FIX DESCRIPTION:\par Modified Object Server Purger to checks each file that is available \par for purging against the database to ensure this file was not \par incorrectly modifed to RW. If any file encounters this state, the\par file permissions are adjusted to the intended state and the file \par is removed from the purger list.\par \par ***************************************************\par APAR NUMBER:\tab IR50203 \par COMPONENT: Resource Manager\par APAR DESCRIPTION:\par CM validation utility incorrectly creates a record in\par syncreport5 indicating that there is a createdate discrepancy\par between the records in sbtparts and base_objects. This appears\par to occur only for objects created after daylight savings time\par has taken affect. A comparison of the actual records from each\par of the tables shows that the createdate timestamp is the same.\par \par \par LOCAL FIX:\par manually validate the records reported.\par \par FIX DESCRIPTION:\par Make the code changes for day light saving on the timestamp.\par \par Installation:\par Back up the original frnxlbsy(AIX), frnnlbsy(Window),\par then apply the new one.\par \par *****************************************************\par APAR NUMBER:\tab IR50692 \par COMPONENT: Resource Manager\par APAR DESCRIPTION: \par An incorrect file size results in a destaging failure.\par FIX DESCRIPTION: \par The wrong format specifier was used for double data type.\par \par ************************************\par Fixpack 710.14\par ************************************\par APAR NUMBER: IR49231 \par COMPONENT: LIBRARY SERVER\par \par APAR DESCRIPTION: \par If a retrieve request from a Content Manager client takes a long \par time to be fulfilled (e.g. the retrieve involves a TSM retrieve \par from tape), it is possible that the Folder Manager on the client \par will time out. Once the object server begins to transfer the \par object to the toolkit daemon, the daemon complains that the file it \par is to place the object into is either null or unaccessible. \par \par The client frndiag.log will show the following errors: \par \par PID:68812(java) \par Appid:none \par CLIENT DA \par Probe:1 \par \par <2002-08-20 10:21:08.40 Type: ERRLOG \par File: dapobjst.c \par Line: 1359 \par Func: DmnOpenMapFile \par Action: pszFileName> \par List Manager gave Daemon null string for FileName \par \par 2002-08-20-10.21.08.557281 Instance:FRN Node:000 \par PID:68812(java) Appid:none \par CLIENT LI Probe:1 \par \par <2002-08-20 10:21:08.55 Type: ERRLOG \par File: lioapi.c \par Line: 3465 \par Func: IsoForceOutClient \par Action: DATA RC: 0> \par FRNODAOS closing communications with partner. \par \par 2002-08-20-10.21.18.619478 Instance:FRN Node:000 \par PID:68812(java) Appid:none \par CLIENT DA Probe:1 \par \par <2002-08-20 10:21:18.61 Type: ERRLOG \par File: dapobjst.c \par Line: 1902 \par Func: DmnRetrieveBlob RC: 9139> \par Daemon Object Server Thread=1286: Blob retrieved failed. \par \par Or the error may show up like this followed by the last two \par messages above \par \par PID:100236(java) Appid:none \par CLIENT DA Probe:1 \par \par <2002-08-20 12:12:57.14 Type: ERRLOG \par File: dapobjst.c \par Line: 1385 \par Func: DmnOpenMapFile Action: FrnSysOpen> \par Open error for file /home/mp2/frn/work/AHFMIMLP.TMP \par \par \par \par FIX DESCRIPTION:\par Validate the list manager element being used to store or retrieve. \par If the request had timed out then the element may be in use by another \par request. Validate the item id being processed is the same \par as that in the list element. \par \par *************************\par APAR NUMBER: IR49232\par COMPONENT: LIBRARY SERVER\par \par \par APAR DESCRIPTION:\par Simultaneous retrieve of the same object from TSM into CM \par object server staging causes a file collision in the CM staging \par area . The second of the two retrieves will get an error during \par retrieve. This can result in a Folder Manager Timeout to the \par application. \par \par FIX DESCRIPTION:\par In the case where a collision is detected, the process detecting the collision will retry\par using the same file in staging, in effect waiting until the first retrieve request is satisfied\par and completes placing the object into staging.\par \par *************************\par APAR NUMBER: IR49511 \par COMPONENT: LIBRARY SERVER\par \par APAR DESCRIPTION: \par Simultaneous logons can potential cause a race condition when \par initializing the list manager. If the problem occurs, the second user \par will get a 9126 LSTERR_INSUFFICIENT_MEMORY\par \par FIX DESCRIPTION:\par When a second process or thread toolkit application attempts to \par initialize the list manager component, it will detect that \par initialization is in progress by the first. The second process will\par sleep for 2 seconds and then attempt to attach to the already \par initialized list manager. If this attach still fails a more \par meaningful error code is returned.\par \par LST_ERR_INITIALIZATION_FAILED 9101\par \par \par *************************\par APAR NUMBER: IR49630 \par COMPONENT: Library Server\par \par APAR DESCRIPTION: \par There are cases in the library server where it is not returning\par sqlcodes to the client. This is masking db2 sqlcode that the client needs.\par \par FIX DESCRIPTION:\par The code will now pass back the sqlcode in the lsqlcode fields of the response block.\par \par *************************\par APAR NUMBER: IR48747 \par COMPONENT: LIBRARY SERVER\par \par APAR DESCRIPTION: \par When ddo.add() or ddo.update() is inside a pending transaction,\par users cannot log into the system. The connect methods will just\par block until that transaction is complete.\par \par FIX DESCRIPTION:\par Fixed \par \par *************************\par APAR NUMBER: IR49491 \par COMPONENT: 5648D0431 / Library Server\par \par APAR DESCRIPTION:\par LIBRARY SERVER child processes terminating unexpectly with no error messages\par in FRNDIAG.LOG or ERRPT \par \par FIX DESCRIPTION:\par Fixed.\par \par *************************\par APAR NUMBER: IR49531\par \par COMPONENT: CS C API Toolkit\par \par APAR DESCRIPTION: \par SIMLIBDELETEITEM API does not correctly map the SQLCODE -911\par returned by the CM Library. Swveral other API's have the same\par problem.\par \par FIX DESCRIPTION:\par Changed the code of SimLibDeleteItem and other API's to make sure\par when Library Server returns a bad return code, the SQL code will\par always be surfaced as ulExtReason in the RCSTRUCT returned data\par structure.\par \par *************************\par APAR NUMBER: IR49223 \par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par STAGING AREA FILLS UP, FRNCMD STATUS COMMAND SHOWS A LOT OF\par SPACE LEFT IN STAGING WHEN THE FILE SYSTEM IS ACTUALLY FULL\par 'frncmd (object server) status' shows only about 25% used. Since the\par purger is set to start when the staging area is 80% full, it\par never runs.\par \par FIX DESCRIPTION:\par Set the purger start / stop percentages very low (e.g.: 20 / 10 )\par \par *************************\par APAR NUMBER: IR49740\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par When the Library Server determines there is a need to cancel a transaction, \par as when a communication error occurs between the client and LS, or the LS receives a timeout\par waiting for requests from an active client transaction, the library server would roll back the DB2 transaction,\par but fail to send a rollback or an error to the object server. This would potentially\par leave work in the transaction uncommitted when the\par conversation was terminated as if no error occurred.\par \par FIX DESCRIPTION:\par The Library Server failed to send endTrans and then closes the connection cleanly.\par This was leaving uncommitted data. OS should rollback if commit not received.\par *************************\par \par APAR NUMBER: IR49275\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par Application program hangs on a retrieve request to CM. The\par object requested is never sent to the application. The object\par is also not found in the staging area. A trace of the Object\par Server shows that the object is in TSM, and that TSM sent back a\par return code '2' (object not found - DSM_RC_ABORT_NO_MATCH ).\par \par FIX DESCRIPTION:\par Fixed the hang.\par \par *************************\par APAR NUMBER: IR49825 \par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par Malloc splint result in a lost FRNXLLCH child process\par \par FIX DESCRIPTION:\par When the LS gets a fatal error (in this case, a 911) and takes \par the error path, it flags the OS involved in the transaction as \par inactive and not updated. The later flag was not being reset properly. \par The LS now sets that flag appropriately. Also, the isolator component \par avoids using its transmit buffer, when it determines that its socket \par handle is invalid and will return ISOERR_BAD_PARTNER_HANDLE = 9001. \par Additional trace was added to the isolator to trace its memory allocation \par and free of its transmit buffers. Finally, the LS will no consider an endclient \par failure to the OS as FATAL. The transaction can rollforward.\par \par ************************************\par Fixpack 710.13\par ************************************\par \par APAR NUMBER:\tab\tab IR48747\par COMPONENT:\tab\tab\tab LIBRARY SERVER\par \par APAR DESCRIPTION:\par When ddo.add() or ddo.update() is inside a pending transaction,\par users cannot log into the system. The connect methods will just\par block until that transaction is complete. This fix was initially \par provided in fixpack10.\par \par Fix Description:\par Moved the checkout table queries to a different package and used the \par UR isolation level on that package.\par \par *************************\par \par APAR NUMBER: IR47881\par COMPONENT: LIBRARY SERVER\par \par APAR DESCRIPTION: \par The FRNNMIUT.exe fails to commplete. And examination of the \par failure show that we are looking FRN$SEARCH indexclass in the \par SBTNLSKEYWORDS table. EXEC SQL DECLARE SearchLangCursor CURSOR \par FOR SELECT LANGUAGECODE FROM SBTNLSKEYWORDS WHERE \par KEYWORDSTRING LIKE '%FRN$SEARCH' AND KEYWORDCLASSFI = 2 FOR \par READ ONLY; This fails with a SQLCODE of 100, row not found. \par \par FIX DESCRIPTION:\par Updated the FRNNMUIT.exe migration utility. Refer to install\par instructions.\par \par *************************\par \par APAR NUMBER: IR49024\par COMPONENT: TOOLKIT\par \par APAR DESCRIPTION: \par During transaction processing to load new objects into Content \par Manager, locks are obtained and held on the SBTCHECKEDOUT table.\par If the transaction runs for a long time deadlocks can occur\par between the load program and normal retrieve processing. Since \par the load is done with a transaction, the locks on SBTCHECKEDOUT \par are not necessary for the load program. \par \par FIX DESCRIPTION:\par If we are in a transaction, then we don't need to do check in/out\par while doing updates. This includes APIs like: SimLibOpenItemAttr,\par SimLibCloseAttr, SimLibCatalogObject, SimLibCreateObject, \par SimLibStoreObject, and SimLibOpenObject.\par \par *************************\par \par APAR NUMBER: IR46389\par COMPONENT: INSTALL\par \par APAR DESCRIPTION: \par The frncrtdb.lib.sh shell script calls frncrtd1.sh. If on a normal \par system, frncrtd1.sh calls frnxinlc.db2 to create the db tables.\par However, if on a DB2 EEE system, frncrtd1.sh calls frnxinle.db2. \par \par The frnxinle.db2 shell script has two problems:\par 1. The command to create an index on SBTFOREIGNPARTSNMS has a bad \par column name in the command. This causes a rc=8930, and the \par db creation process halts. \par 2. The frnxinle.db2 shell does not seem to be updated. It creates \par a CM v6.1 database (it should create a v7.1 database). \par \par The new tables are missing (ie SBTCOPIES) . When the \par bind runs, "table not found" error messages are received. \par \par FIX DESCRIPTION:\par The AIX script frnxinle.db2 has been updated with the new tables. \par \par \par ************************************\par Fixpack 710.12\par ************************************\par \par APAR NUMBER: IR48765\par COMPONENT: LIBRARY SERVER\par \par APAR DESCRIPTION: \par On CM71 AIX and NT, customer is unable to delete a zero-length \par blob (DDO) with content class set to DK_DL_CC_UNKOWN using the EIP71 \par java APIs. \par \par The error code returned is FRN6056, ExtRC=7736 \par \par FIX DESCRIPTION:\par Previously, LS detects the blob has zero length and returns this error.\par Change has been made to return OK since Obj Server can handle deleting\par zero length object.\par \par *************************\par \par APAR NUMBER: IR47095\par COMPONENT: COMMON SERVICES\par \par APAR DESCRIPTION: \par In CM7.1, if the network configuration has been changed to\par invalidate the FRNOLINT.TBL, for example the hostname of a\par server is changed, then the network table generation utility\par will error with a "No servers read ERROR(9019): Network Table\par file syntax invalid, missing or misspelled". The erroneous\par FRNOLINT.TBL cannot be edited with the network table generation\par utility.\par \par FIX DESCRIPTION:\par Ensure that an invalid hostname can be read in, and altered via \par the network table utility.\par \par *************************\par \par APAR NUMBER: IR48914\par COMPONENT: OBJECT SERVER\par \par APAR DESCRIPTION: \par TSM Retrieve buffer size is too small.\par \par FIX DESCRIPTION:\par TSM Buffer size on Retrieve was increased to 32K.\par \par \par ************************************\par Fixpack 710.11\par ************************************\par \par APAR NUMBER: IR47816\par COMPONENT: OBJECT SERVER\par \par APAR DESCRIPTION: \par CM Object Server will not start if database name non-alphabetic \par character.\par \par FIX DESCRIPTION:\par Fixed Object Database algorithm to handle special characters.\par \par *************************\par \par APAR NUMBER: IR48981\par COMPONENT: COMMON SERVICES\par \par APAR DESCRIPTION: \par On AIX When using the frncmd or frnstop commands, a core dump\par is genereated as the command is exited.\par \par FIX DESCRIPTION:\par Upon shutdown, check if variables are initialized before using\par them to perform cleanup exit processing.\par \par *************************\par \par APAR NUMBER: IR48665\par COMPONENT: TOOLKIT\par \par \par APAR Description:\par In the use of the SimLibCopyObject a local copy of the object is\par stored at the Client workstation in the working directory for \par the client application. This file is not removed from this \par directory after use. This eventually fills the file system and \par causes the Dr. Watson error. \par \par Fix Description:\par At the end of SimLibCopyObject, remove the temporary file in\par FRNROOT\\work directory.\par \par *************************\par \par APAR NUMBER: IR47981\par COMPONENT: OBJECT SERVER\par \par APAR DESCRIPTION: \par CM Object Server intermitently fails to initialize on Oracle \par with certain TSM volume names.\par \par FIX DESCRIPTION:\par Fixed algorithm that parsed the volume information to strip \par invalid information.\par \par \par ************************************\par Fixpack 710.10\par ************************************\par \par APAR NUMBER: IR46942\par COMPONENT: LIBRARY SERVER\par \par APAR DESCRIPTION: \par The Library Server intermittently hangs during shutdown.\par \par FIX DESCRIPTION:\par Shutdown logic changed to avoid the failing code. Removed\par calls to handshake between components and avoid looping caused\par by memory faults. \par \par *************************\par \par APAR NUMBER: IR47443\par COMPONENT: OBJECT SERVER\par \par APAR DESCRIPTION:\par LBSDESTAGEOBJECT MSGCODE 9883 DOES NOT EXPOSE THE RETURN CODE DURING TRACE\par \par FIX DESCRIPTION:\par Program was changed to expose the ERRNO information in the Destager Trace.\par \par *************************\par \par APAR NUMBER: IR48435\par COMPONENT: OBJECT SERVER\par \par APAR DESCRIPTION:\par In the move of the retrieved object from the Object server to\par the LAN Cache server the opening of the object file fails. The\par order being processed is LbsProcessMoveFromOrder which fails\par with the 9922 message. In testing it was discovered that a\par sharing violation was received for the open request. On\par examining the trace we found the two different open requests.\par The initial open for the retrieve request and the second request\par for the move to the LAN cache server are not using compatible\par opens so that both processes can have access to the file. This\par issue is only apparent if the object being retrieved is large.\par This customer found it at around 900KB files.\par \par FIX DESCRIPTION:\par The file open attributes during a "move from" internal order were \par changed to an explicit shared_read. This change impacts only NT. \par \par ************************\par \par APAR NUMBER: \tab IR48544\par COMPONENT: \tab 5648D0411 / OBJECT SERVER\par \par APAR DESCRIPTION:\par Problem was caused by the CMv61 command utility application not \par having a large enough buffer to contain the output of the GECOS \par text for the AIX user. The resulting error was the AIX User \par information could not be read and the command utility failed to operate \par because of the authentation failure.\par \par \par FIX DESCRIPTION:\par Program was changed to use a larger buffer to handle the GECOS information.\par \par **************************\par \par APAR NUMBER: IR48676\par COMPONENT: COMMON SERVICES\par \par APAR DESCRIPTION: \par After installation of CM 7.1.0 Fixpack 9, various errors/traps \par and/or Access Violations can occur if FRNTRACELEV is not set to '0'. \par The problem shows itself during application initialization or the \par first time store or retrieve object is performed.\par \par On the Library Server, an Application Exception is seen in \par FRNNLLCH.EXE during object import. The error window has text \par like: "The instruction at "0x005a052a" referenced memory at \par "0x00000069". The memory could not be "read". Drwtsn32 shows \par the error to be an Access Violation ( 0xc0000005 ). The child \par process associated with this error is terminated. The LS could \par eventually stop responding if all child processes experience \par this error. \par \par On the production client (vic.exe), the problems shows up as no \par servers listed in the drop down listbox in the logon panel. \par \par On customer applications, Access Violations (0xc0000005) will occur. \par \par FIX DESCRIPTION:\par Removed use of uninitialized variable pointers for specific logging\par instruction.\par \par \par ****************************************\par Fixpack 710.9\par ****************************************\par \par APAR NUMBER: IR47761\par COMPONENT: Object Server\par \par APAR DESCRIPTION:\par The customer was saving an update to an object but received\par RC 6056 ExtRC 9924 through the custom client. The Library\par Server posted FRN7030 with an RC 9924. The Object Server logged\par no errors. A subsequent retrieve fails with the error analysis\par exposing the fact that the file on the object server is missing.\par The BASE_OBJECTS row for the missing file indicates it had been\par destaged. A trace of the object server shows in the replacement\par of the file, the discard order fails due to a database error and\par the retry also fails. Development believes the transaction\par processing is allowing the deleting of the original file even\par though the update failed.\par \par FIX DESCRIPTION:\par The old object will not be deleted until destager runs.\par \par *************************\par \par APAR NUMBER: IR47817\par COMPONENT: Common Services\par \par APAR DESCRIPTION:\par AIX applications would fail to logon with 9045 return code.\par \par \par FIX DESCRIPTION:\par The initialization of the toolkit was not threadsafe in reading in the\par network table. A previous APAR addressed this problem, but broke\par some AIX applications. Hence, threadsafe initialization was modified\par for the AIX CM Toolkit, such that it didn't rely on C++ constructors\par which failed to run in some circumstances.\par \par SPECIAL INSTALLATION INSTRUCTIONS:\par Any workaround, in setting FRNSINGLEPROCESSCLIENT=0 or 1, should be removed.\par \par *************************\par \par APAR NUMBER: IR48102\par COMPONENT: Content Server\par \par APAR DESCRIPTION:\par IP2LSTUSERS and IP2LSTUSERGROUPS limits the display of users to\par 10000.\par \par FIX DESCRIPTION:\par Increased Ip2ListUsers limit from 10,000 to 30,000.\par \par *************************\par \par APAR NUMBER: IR48114\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par Search on an index class with option ATTRONLY results in a\par termination of a child process at the library server. No\par coredump created.\par \par FIX DESCRIPTION:\par Fixed the mismatching structure definition that was causing\par memory corruption.\par \par *************************\par \par \par ****************************************\par Fixpack 710.8\par ****************************************\par \par APAR NUMBER: IR47140\par COMPONENT: 5648D0422 / LIBRARY SERVER\par PMR NUMBER: 44932,044,866\par \par APAR DESCRIPTION:\par This problem shows up if a decimal keyfield has been defined and\par is included in an indexclass. A search on the this indexclass\par caused the library server child process, FRNNLLCH.exe, to take\par the application error reported by Windows.\par \par FIX DESCRIPTION:\par Fixed how we packed a single valued decimal field.\par \par *************************\par \par APAR NUMBER: IR47585\par COMPONENT: 5648D0431 / COMMON SERVICES\par PMR NUMBER: 47516,075,724\par \par APAR DESCRIPTION:\par The frnxdamn process is not starting as a separate process in\par the AIX client after the install of CM 7.1.0 Fixpack 3\par \par FIX DESCRIPTION:\par Altered change made for Windows Toolkit so that it doesn't apply to AIX.\par Hence, the AIX Toolkit will behave as it did prior to Fixpack 3 in that\par frnxdamn will start as a process.\par \par SPECIAL INSTALLATION INSTRUCTIONS:\par Any workaround, e.g. setting FRNSINGLEPROCESSCLIENT=0, should be removed\par \par *************************\par \par APAR NUMBER: IR47882\par COMPONENT: 5648D0421 / LIBRARY SERVER\par \par APAR DESCRIPTION:\par Performing an update operation on a object within a transaction puts a\par lock on the checkout table for that item. This blocks other queries for\par that item.\par \par Fix Description:\par Moved the checkout query to a different package with a different isolation\par level.\par \par Special Install Instructions:\par There is a new bind file (frnollq6.bnd) that is created by this fix.\par Make sure the new bind file is copied to the BIND directory of the CM\par install directory.\par \par *************************\par \par APAR NUMBER: IR48012\par COMPONENT: 5648D0452 / CS CAPI TOOLKIT\par PMR NUMBER: 73679,500,000\par \par APAR DESCRIPTION:\par Using the standard Content Manager client (vic.exe), message\par 'FRN6531A You cannot open the history log' is seen by users on\par some machines when trying to open the History Log. The same\par user (using the same userid) can successfully retrieve the\par history log on other machines.\par \par Folder Manager trace shows an Ip2ListHistory call with ulRC =\par 6288 (A library client call within a folder manager function was\par not successful), and a ulExtRC = 9107 (The element handle is not\par valid).\par \par FIX DESCRIPTION:\par In retrieving the history log with event type parts, prior to the\par LibRetrieveItemPart() call, added two more calls, LibAllocateItemPart()\par and LibNameItemPart(), to associate the part into an entry in the\par element table. Later on when the retrieve order is launched, the\par Daemon can uniquely identify the correct entry in the element table\par that corresponds to the event part being retrieved, so the retrieve\par will be successful.\par \par \par ****************************************\par Fixpack 710.7\par ****************************************\par \par APAR NUMBER: IR47838\par COMPONENT: 5648D0452\par \par APAR DESCRIPTION:\par In Folder Manager simLibLogon code, number of workbaskets and workflow are\par 3000 maximum separately. This is too restrictive for customers. A higher\par limit, like 30000 is needed for both.\par \par FIX DESCRIPTION:\par Increased both limits to 30000 from 3000.\par \par *******************\par \par APAR NUMBER: IR47744\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par Content Manager 7.1 for AIX supports multiple instances of the library\par server. There exists no documentation on proper setup of such a\par configuration.\par \par FIX DESCRIPTION:\par CM v7.1 will allow you to run two instances of the same version of the\par library server on the same machine.\par \par You will install the library server code as you would as normal. You will\par need to create two different databases for the library server. The database\par names must be different. You may have the two library server databases in\par the same instances or different instances.\par \par You will need to create an entry in the network table for both of these\par servers in the network table. Use the network table generation utility\par to accomplish this.\par \par The index class and the view search dlls for each server will be placed\par in a different directory. The location of these dlls will be as follows:\par \par [FRNLOCAL]\\[DB Name]\\dll.\par \par On AIX, you will have to define two different users to administer each\par server. You must also run frnconfig.lib and frnstart.lib commands as\par normal for each of the servers.\par \par *******************\par \par APAR NUMBER: IR47578\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par When processing a forced log-off order from a client, there is a chance that\par the child process gets signal 11 and causes the library server to hang.\par \par FIX DESCRIPTION:\par During processing a forced log-off order, the child process will free a\par log-on instance block. There is a chance that it later refers to that\par block again and gets a segmentation violation. Changes have been made to\par make sure that it never refers to that freed memory block.\par \par *******************\par \par APAR NUMBER: IR47652\par COMPONENT: 5648D0452 / Toolkit\par \par APAR DESCRIPTION:\par If the default install directory of the CM toolkit or client is in a\par directory which contains a space, then in firewall cases, specifying\par FRNSINGLEPROCESSCLIENT=0 will cause the application to fail to logon\par to the CM library server.\par \par FIX DESCRIPTION:\par Remove startup dependency on path.\par \par *******************\par \par APAR NUMBER: IR47261\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par In those locales where the comma is defined as the decimal separator, a\par Simlibsearch results in an sql -104, an unexpected token was found. The\par search does not complete.\par \par FIX DESCRIPTION:\par Changed to code to make sure the decimal token is always "." irregardless\par of the locale settings.\par \par *******************\par \par APAR NUMBER: IR46737\par COMPONENT: 5648D0452 (C API Toolkit Win)\par \par APAR DESCRIPTION:\par Custom application using EIP api's to aix cm712 toolkit and library allows\par an user defined with viewonly privileges to update and delete library\par database records.\par \par FIX DESCRIPTION:\par We removed privilege bits 110, 111, 112, 113, from OIM_SA_USER, and added\par privilege bits 56, 57, 58 to OIM_SA_WORKBASKET and OIM_SA_WORKFLOW, and\par added privilege bits 110, 111, 112, 113 to OIM_CHANGE_INDEX_CLASS.\par \par REFERENCE DOCUMENTATION:\par Users have to apply this APAR fix first, then delete all existing privileges,\par and redefine them using sys admin before they get the benefit of this APAR\par fix.\par \par ****************************************\par Fixpack 710.6 included no AIX fixes\par ****************************************\par \par ****************************************\par Fixpack 710.5\par ****************************************\par \par APAR NUMBER: IR46801 / AIX\par COMPONENT: OBJECT SERVER / 5648D0411\par PMR NUMBER: 51946,180,000\par \par APAR DESCRIPTION:\par If the "gecos" information field is updated in the\par /etc/passwd/ for the object server osadmin account, status\par commands to the object server fail with errors.\par .\par Issuing the following command to the object server:\par su - osadmin -c frncmd OSMTXH status\par .\par Outputs the errors:\par FRN2021I: Session Established at Fri May 4 11:28:12 EDT 2001\par FRN8095A: Error. An incorrect parameter was entered.\par FRN8091A: Invalid user.\par \par FIX DESCRIPTION:\par Fixed problem with user descriptions which caused the cmd utility to fail.\par \par \par *******************\par \par APAR NUMBER: IR44982 / AIX & Windows\par COMPONENT: LIBRARY SERVER / 5648D0422\par PMR NUMBER: 17111,519,000\par \par APAR DESCRIPTION:\par An application written using the OO-API may get the following\par error message when trying to work with a video object:\par \par Error text: DGL0423A: The specified part object does not\par exist SimLibQueryObject [FRN=6056, ExtRC=9924]\par \par In this example, the getCreatedTimestamp() method was being\par used, which eventually gets turned into a SimLibQueryObject\par call, which does not work correctly for video objects.\par \par FIX DESCRIPTION:\par As part of retrieving an object, file manager issues a query object API.\par This API sends an order to the object server for SMS info. A video object\par does not have any SMS info so this APIreturns an error and retrieve fails.\par \par *******************\par \par APAR NUMBER: IR47426 / AIX & Windows\par COMPONENT: CS CAPI TOOLKIT / 5648D0451\par PMR NUMBER: 48241,000,834\par \par APAR DESCRIPTION:\par The following error message is seen when initializing a\par multi-threaded CM application program:\par \par 2001-12-04-12.07.59.409168 Instance:FRN Node:000\par PID:20164(java) Appid:none\par CLIENT LI Probe:1\par <2001-12-04 12:07:59.40 Type: ERRLOG File: lioiso.c\par Line: 1372 Func: IsoSocketsInit Action: SymInstallSymbol RC: 1\par MsgCode 9066>\par \par FRN9066A: A startup problem occurred in the FRNOLIIS program.\par Return code = 1\par \par The return code '1' indicates that the symbol is already\par installed.\par \par FIX DESCRIPTION:\par Correct daemon and IsoInitialization processing to avoid listservers\par threading problem.\par \par ****************************************\par Fixpack 710.4\par ****************************************\par \par APAR NUMBER: IR45075 / AIX & Windows\par COMPONENT: Object Server\par PMR NUMBER: 27196,379,000\par \par APAR DESCRIPTION:\par CMv71 Object Server reported a sql return code from DB2 as an application\par problem and did not report a severe error\par \par FIX DESCRIPTION:\par CMv71Object Server now reports the sql error as severe.\par \par REFERENCE DOCUMENTATION:\par None\par \par *******************\par \par APAR NUMBER: IR46768 / AIX & Windows\par COMPONENT: dbmigration\par \par APAR DESCRIPTION:\par The database migration utility does not take into conisderation\par non-english languages with regards to attribute names.\par \par There are several different error messages the customer\par will receive depending on the error condition. Some\par examples include:\par \par Error in module 'ModifySBTFOREIGNPARTSNMS()', line #681:\par \par \par Error in module 'ModifyFRNSearchIC()', line #702:\par \par \par Affects:\par Windows and AIX platforms, db2 and oracle migration utilities\par for Content Manager 7.1\par \par FIX DESCRIPTION:\par The migration utility has been modified to account for a non-standard\par CM tablespace in Oracle and the use of a LIKEclause instead of equality\par check for NLS keyword names (to accommodate for the * prefix). Also,\par SQL return code isalways displayed in case of error for better diagnosis\par of future problems.\par \par SPECIAL INSTALLATION INSTRUCTIONS:\par As always, the migration utility must be copied from the CD-ROM into a\par local temporary directory with read/writeprivileges. The directory into\par which it is copied must reside on the system with the Library Server to\par be migrated.For DB2, the bind file must also be copied into the same\par directory as the migration utility executable.\par \par REFERENCE DOCUMENTATION:\par Planning and Install Guide, migration section for general migration\par instructions.\par \par *******************\par \par APAR NUMBER: IR45069 / AIX & Windows\par COMPONENT: Object Server\par PMR NUMBER: 27196,379,000\par \par APAR DESCRIPTION:\par Customer was receiving FRN9006A, FRN9927A and FRN9919A in\par frndiag.log on retrieve. The trace uncovered that the trigger\par for the FRN9006A was 'CreateFileMapping RC: 8>'. The actual\par cause was that the file returned from ADSM was smaller than what\par was expected.\par \par FIX DESCRIPTION:\par Utilization of the supported ip2toccount api (as used by the\par vi client application) to determine the\par count of items in a workbasket results in a lenghthy response\par time when the number of items and workbaskets is large.\par \par SPECIAL INSTALLATION INSTRUCTIONS:\par 1. Rename \\frenroot\\dll\\frnnfios.dll to something else.\par 2. Copy the new frnnfios.dll to the \\frnroot\\dll directory.\par 3. Bring up your application and try again.\par \par *******************\par \par APAR NUMBER: IR45001 / AIX & Windows\par COMPONENT: C API Toolkit\par \par APAR DESCRIPTION:\par A CM user is created with privilege bit 15 cleared, which should\par allow filtering of search results to exclude all documents that\par the user does not have access to. However, when a search is\par done, a folder manager trace shows that it fails on a\par SimLibGetTOCData call with RC = 6238. The client (vic.exe) does\par not have the capability of filtering this way. This APAR is\par being opened per development to fix this problem in the folder\par manager.\par \par FIX DESCRIPTION:\par Change the SimLibGetTOCData source code to continue processing\par (instead ofreturning error return code 6238) when there is no\par information returned from Library Server for aspecific itemID\par that this user has no authority to access. In this case, the\par returned SNAPSHOTSTRUCTdata structure for this itemID is empty\par other than the itemID itself.\par \par *******************\par \par APAR NUMBER: IR42801 / AIX\par COMPONENT: Library Server\par PMR NUMBER: 83284,422,000\par \par APAR DESCRIPTION:\par FRNXMILE gets SQLCODE 204 due to root being used as the high level\par qualifier for the tables.\par \par FIX DESCRIPTION:\par ROOT userid hardcoded in Korn Shell script\par \par ****************************************\par Fixpack 710.3\par ****************************************\par \par APAR NUMBER: IR43090\par COMPONENT: OS\par PMR NUMBER: 64570,519,000\par \par APAR DESCRIPTION:\par After the migrator migrates an objects into a storage class, it will set the\par OBJ_ACCTIONDATE (the next migration date) to a new date which matches the\par retention period, for example, if the retention period of the destination\par storage class is set to 60 day, then after migrating into this storage class,\par the OBJ_ACTIONDATE of an object will be set to 60 days from the current\par date. This means, during the next 59 days, the migrator will bypass this\par object when selecting candidates for migration. If the retention period has\par been set as "FOREVER", than after the migration, the OBJ_ACTIONDATE will be\par set to 12/31/9999, which means that the migrator will never consider it again\par as a potential candidate for migration. During every migration cycle, the\par migrator will "look" at any object with OBJ_ACTIONDATE set to the current day\par or early, and decide is the object due to migrate.\par \par Currently, unless the user set the retention period of a storage class to\par "FOREVER" or to a date before the year 2038 (some 13000+ days from now),\par the OBJ_ACTIONDATE of the migrated object will be set incorrectly to the\par next day. As more and more objects been migrated to the storage class with\par the wrong action date set, the migrator will waste most of the migration\par cycle time looking for objects that need not be migrated at all. Eventually,\par in some extreme case, all the migration cycle time are wasted, and there is\par no time left for any real object migration in the migration cycle.\par \par The migrator is using the ANSI C's time() function to compare two dates, but\par the time() function always return a negative value for any date after\par Jan 18, 2038, and this negative time will confuse the migrator and make it to\par set the next migration date incorrectly.\par \par FIX DESCRIPTION:\par The fix put in a check for the negative time returned from the time()\par function, and will set the next action date to 12/31/9999 in this case. So,\par if the user set the retention date of a storage class in the migration policy\par after Jan, 2038 (for example, from 13000+ to 32000 days) it will be treated\par as FOREVER.\par \par *************************\par \par APAR NUMBER: IR44885\par COMPONENT: LS / 5648D0431\par \par APAR DESCRIPTION:\par If configuring a CM system such that the CM application is\par outside a firewall (i.e. a network table entry for the client\par daemon was added to the network table) searches to the\par library server, and perhaps even logon to the library server\par will fail with an out of memory condition. There should also\par appear rouge frnndamn.exe processes after each stop and\par restart of the application. This fix requires the user to\par specify the FRNSINGLEPROCESSCLIENT environment variable when\par configured to use a firewall. In addition to this fix, the\par application writer should consider making sure that all\par retrieval of objects are placed into files rather than into\par memory, thus avoiding memory full conditions. Error number\par 9126 (FRN9126A) will be logged in the client frndiag.log as a\par result of this failure.\par \par FIX DESCRIPTION:\par CM disconnect/exit processing was changed to use exit lists rather\par than destructors, changing the order in which CM would cleanup.\par \par *************************\par \par APAR NUMBER: IR45362\par COMPONENT: OS / 5648D0411\par PMR NUMBER: 50501,032,724\par \par APAR DESCRIPTION:\par Object server reports FRN9919A, FRN9883A on retrieval of an\par object, followed by an abnormal termination of the FRNXLBPR\par process, FRNsysSignalHandler, this process received a signal 4.\par Problem appears to be similar to symptom described in VI v24\par apar IR42465.\par \par FIX DESCRIPTION:\par fix lbsretriev.c lbsmigra.c, and lbscomm.c. Filter out the zero size file.\par \par *************************\par \par APAR NUMBER: IR45703\par COMPONENT: TK / 5648D0452\par \par APAR DESCRIPTION:\par AIX frnxdamn process will end with an exception when\par running with Multithreaded applications like Dynamic Page Builder\par and EIP. The problem is no limited to these applications and could\par occur with any AIX application.\par \par FIX DESCRIPTION:\par A zero file handle(0) is considered valid during object store and retrieve\par within the object server on AIX.\par \par *************************\par \par APAR NUMBER: IR46071\par COMPONENT: LS\par PMR NUMBER: 03486\par \par APAR DESCRIPTION:\par In the 'Selected' pull down in the sysadmin are three utilities\par (Optimize, History, Expired time). Using the Optimize utility\par for testing, once it is set, it can not be unlocked. It appears\par to take the update but a subsequent logon displays the same\par scheduled status.\par \par FIX DESCRIPTION:\par Provided a new pgm to delete the utility schedules.\par \par SPECIAL INSTALLATION INSTRUCTIONS:\par For DB2: Issue the following commands to bind the package:\par db2 connect to \par db2 bind utpschd.bnd\par \par *************************\par \par APAR NUMBER: IR46471 / Windows & AIX\par COMPONENT: 5648D0452\par PMR NUMBER: PMR 46692,019\par \par APAR DESCRIPTION:\par The nhttp.exe application on the Notes server was crashing causing the Domino\par server to fail. The DLL involved is the FRNNDAPI.dll. This is to handle CM\par crash problem. This problem can occur on CM 6.1 and CM 7.1.This problem can\par occur on CM 6.1 and CM 7.1.\par \par FIX DESCRIPTION:\par In DmnGetResponse function, added semophore protection before the\par SymDeleteSymbol() function call, and release the semophore after\par the call. This way there will be no interruption between different\par threads on the symbol table.\par \par *************************\par \par APAR NUMBER: IR46771\par COMPONENT: LS\par PMR NUMBER: 36410,075,724\par \par APAR DESCRIPTION:\par The following message is posted at the object server:\par <2001-06-27 10:43:43.10 Type: ERRLOG File: lbsdb.c Line: 8984\par Func: LbsUpdateTargetObjectRowReplace RC: -911 MsgCode: 9861>\par FRN9861A:Database operation type UPDATE for the LAN-based object\par server finished. Return code = -911.\par <2001-06-27 10:43:43.30 Type: ERRLOG File: lbsdb.c Line: 8798\par Func: LbsFetchSourceObjectRowReplace RC: 100 MsgCode: 9861>\par FRN9861A: Database operation type FETCH SOURCE for the LAN-based\par object server finished. Return code = 100.\par \par FIX DESCRIPTION:\par Removed the deadlock retry logic from the library server. It was causing\par problems with the transaction commit scope on the object server.\par \par *************************\par \par APAR NUMBER: IR46843\par COMPONENT: LS / 5648D0432\par \par APAR DESCRIPTION:\par If configuring a CM system such that the CM application is\par outside a firewall (i.e. a network table entry for the client\par daemon was added to the network table) searches to the\par library server, and perhaps even logon to the library server\par will fail with an out of memory condition. There should also\par appear rouge frnndamn.exe processes after each stop and\par restart of the application. This fix requires the user to\par specify the FRNSINGLEPROCESSCLIENT environment variable when\par configured to use a firewall. In addition to this fix, the\par application writer should consider making sure that all\par retrieval of objects are placed into files rather than into\par memory, thus avoiding memory full conditions. Error number\par 9126 (FRN9126A) will be logged in the client frndiag.log as a\par result of this failure.\par \par FIX DESCRIPTION:\par Removed the attempt to autodetect a firewall configuration and autostart\par the daemon process. The adminstrator is required to set\par FRNSINGLEPROCESSCLIENT.\par \par SPECIAL INSTALLATION INSTRUCTIONS:\par In a firewall configured environment:\par Determine if there is to be more than one application process on the\par client workstation.\par 1) If multiple applications are to be run on the workstation specify in\par the system environment variables or setup scripts:\par FRNSINGLEPROCESSCLIENT=0\par and increase FRNHEAPSIZE to 2048 or higher.\par If out of memory conditions still occur, preferably, the application\par writer should, consider making sure that all object retrievals are\par placed into files rather than into memory or increase the FRNHEAPSIZE\par setting, thus avoiding memory full conditions.\par 2) Otherwise, when only one application process exists on the workstation,\par specify FRNSINGLEPROCESSCLIENT=1 and leave the default FRNHEAPSIZE\par setting.\par \par *************************\par \par APAR NUMBER: IR46900\par COMPONENT: TK\par PMR NUMBER: 14826,010,618\par \par APAR DESCRIPTION:\par The Library Client API set is a published, supported interface\par to the Content Manager servers. To get the correct column width\par regardless of data type (IE: when using the LibGetQueryReplyInfo\par call), DmnFieldWidth found in FRNNDAPI.LIB must be used IF any\par multi-value attributes are used and multiple values are stored.\par FRNNDAPI.LIB and the associated header file were not shipped\par with CM 7.1.\par \par FIX DESCRIPTION:\par Update the file groups/filesets to install the missing file.\par \par *************************\par \par APAR NUMBER: IR46902\par COMPONENT: OS / 5648D0411\par PMR NUMBER: 46832,519,000\par \par APAR DESCRIPTION:\par CM71 VALIDATION REPORT RESTORE CAPABILITY FOR TYPE 7\par DISREPANCY RESULTS IN A SIGNAL 11.\par CM71 aix validation utility correctly identifies a type 7\par discrepancy, however when the restore function is selected,\par the process ends with a signal 11 on the replication request.\par \par FIX DESCRIPTION:\par Change replicator program, new frnxrepli created.. Customer need to apply\par this new module.\par \par *************************\par \par APAR NUMBER: IR45810 / AIX\par COMPONENT: 5648D0451\par \par APAR DESCRIPTION:\par Turning off CM client default signal handler\par \par FIX DESCRIPTION:\par Java applications using the CM client code can now turn off the CM signal\par handler in order to determine their own application problems. Before running\par the Java application, a user should export FRNSIG=0 to turn off signal\par handler in CM client code. If this environment variable is not set or is set\par to a different value, the CM signal handler is on. Note that the detection\par of this environment variable occurs at application initialization time.\par Therefore, once the application is started, changing the value of the\par environment variable does not turn on or off the CM signal handler.\par \par *************************\par \par APAR NUMBER: IR46505 / AIX\par COMPONENT: dbmigration\par \par APAR DESCRIPTION:\par In some Oracle environments, language code is not correctly stored internally\par after being read from an Oracle table. Problem is unpredictable and does not\par surface on all Oracle installations. The error has occurred in some\par environments and not in others. Customer will encounter an error during the\par execution of the migration utility for an Oracle system. Error will be\par similar to, "Error in module ModifyFRNSearchIC(), line ..." Migration will\par halt.\par \par FIX DESCRIPTION:\par Internal character array used to store language code expanded well beyond the\par 3-character language code read from Oracle table.\par \par *************************\par \par APAR NUMBER: IR46602 / AIX\par COMPONENT: LS / 5648D0421\par PMR NUMBER: 42028,010,678\par \par APAR DESCRIPTION:\par Customer used frncrtdb.lib and frncrtdb.obj to create the\par Library and Object server databases CM_LIB and CM_OBJ. When\par they start the server, they get a message: "The server cannot\par be validated". If they create the database without the\par underscore in the name (i.e. CMLIB and CMOBJ) then they can\par start the servers with no problem. CM_LIB AND CM_OBJ are valid\par database names as DB2 UDB does allow some non-alphabetic and\par non-numeric characters to be used in database names. See the DB2\par Quick Beginnings manual, Appendix C, Naming Rules for details.\par \par FIX DESCRIPTION:\par Removed the db name checking in the library server. Let it be enforced\par by db2 at the database creation time.\par \par \par ****************************************\par Fixpack 710.2\par ****************************************\par \par APAR NUMBER: IR46504 / AIX\par COMPONENT: Object Server\par PMR NUMBER: 09795,519,000\par \par APAR DESCRIPTION:\par John Rodriquez's group encountered a problem with the bind utility on the\par object server. This was a VI 2.4.1/UDB5.2 on AIX 433 to CM 7.1/UDB7.1 on\par AIX 433 upgrade. Apparently the bind was triggered at object server\par initialization but it failed with:\par \par <2001-06-24 00:13:36.72 Type: ERRLOG File: lbscmn.c Line: 9191\par Func: LbsInitializeDBManager2 Action: LbsBindDB RC: 9981>\par Bind needed, attempting Bind for DB OBJSRVRX USING\par /usr/lpp/frn/bin/BIND/@FRNXLBLB.BSP\par .\par <2001-06-24 00:13:39.28 Type: ERRLOG File: lbsydb.c Line: 1633\par Func: LbsBindDB Action: LbsBindDB RC: -40 MsgCode: 9861>\par FRN9861A: Database operation type Bind for DB OBJSRVRX USING\par /usr/lpp/frn/bin/BIND/@FRNXLBLB.BSP, sqlcode = -40 for the LAN-based\par object server finished. Return code = -40.\par .\par <2001-06-24 00:13:39.38 Type: ERRLOG File: lbscmn.c Line: 9210\par Func: LbsInitializeDBManager2 Action: LbsBindDB RC: -40>\par Bind needed, attempting Bind for DB OBJSRVRX USING\par /usr/lpp/frn/bin/BIND/FRNXLBYD.BND\par .\par <2001-06-24 00:13:39.50 Type: ERRLOG File: lbsydb.c Line:\par 1633 Func: LbsBindDB Action: LbsBindDB RC: -31\par MsgCode: 9861>\par FRN9861A: Database operation type Bind for DB OBJSRVRX\par USING /usr/lpp/frn/bin/BIND/FRNXLBYD.BND, sqlcode = -31\par for the LAN-based object server finished. Return code = -31.\par \par The lbsmonit.h apparently has FRNXLBYD.BND in upper case while the actual\par file is lower case. It is believed this only fails for upgraded systems.\par \par *************************\par \par APAR NUMBER: IR46521\par COMPONENT: Object Server\par \par APAR DESCRIPTION:\par When customer select userid properties to reset password. They would\par highlight the password field, type the new password, then choose ok. The\par 1st character of the password would get lost.. I\par \par *************************\par \par APAR NUMBER: IR44486\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par Customer had a Content Manager V6.1 Library Server "hang".\par Analysis of the frndiag.log showed the following message:\par .....\par 2000-10-12-12.33.45.066090 Instance:FRN Node:000\par PID:26404(frnxllch) Appid:none\par LIBRARY SERVER LL Probe:1\par <2000-10-12 12:33:45.06 Type: ERRLOG File: frnpllch.c Line:\par 1833 RC: 7474 MsgCode: 7474>\par FRN7474A: An internal system problem occurred.\par .....\par The FRN7474A is issued by frnpllch at this point because there\par is an error in receiving an order from the isolator api that we\par call. This APAR is created because the error code that is\par returned is not captured in the FRN7474 message.\par \par FIX DESCRIPTION:\par Changed the log statement to log the IsoReceive error message.\par \par *************************\par \par APAR NUMBER: IR44489\par COMPONENT: System Admin\par \par APAR DESCRIPTION:\par Expired time is locked by the last person/userid who logged onto sys admin...\par Customer has to logged on sys admin, then log off and log on again to have\par the rights to update/change expired time.expired time is suppose to be locked\par by the last person who updated not the last userid/person who logged onto sys\par admin.side note: expired time, once enabled can't be disabled.\par \par FIX DESCRIPTION:\par When scheudling a util, we were using the logged on userid and not the\par scheduler userid.\par \par *************************\par \par APAR NUMBER: IR44258 / AIX\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par Jobber dies from DLL build processing making the library server unavailable.\par This is due to the size of the .sqc file exceeding a limitation in memory\par usage.\par \par FIX DESCRIPTION:\par Processing a very complex search on a database canoverflow our 10k buffer\par search clause. I have modified thecode to check the complexity of the\par search being processed.If the complexity is above a certain level, we will\par not try to process that search.\par \par *************************\par \par APAR NUMBER: IR45048\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par The Library Server does not issue an error message if the\par wrong userid is used to start it. If the wrong userid is used\par to start the Library Server, it initializes and presents the\par user with the "Accepting Requests" message. However, users get\par error message " FRN6740A: The logon was not successful because\par of error 6056 " when they try to log on. The system admin\par client gets a " FRN8571A: =6056 " message. The frndiag.log\par shows -204 SQL return codes (undefined name).\par \par To determine the correct userid, open the DB2 control center and\par view the Library Server database tables. The schema name is the\par userid that should be used to start the Library Sever.\par \par The Object Server issues the following error message when\par started with the wrong userid:\par \par FRN9745A: Unable to update database, because it is the incorrect\par database version, -1.\par \par FIX DESCRIPTION:\par Added a dymamic sql query that will fail under the wrong id\par \par *************************\par \par APAR NUMBER: IR46389 / AIX\par COMPONENT: Library Server\par PMR NUMBER: 19126,519,000\par \par APAR DESCRIPTION:\par The frncrtdb.lib.sh shell script calls frncrtd1.sh. If on a normal\par system, frncrtd1.sh calls frnxinlc.db2 to create the db tables.\par However, if on a DB2 EEE system, frncrtd1.sh calls frnxinle.db2.\par \par The frnxinle.db2 shell script has two problems:\par \par 1. The command to create an index on SBTFOREIGNPARTSNMS has a bad column\par name in the command. This causes a rc=8930, and the db creation\par process halts.\par \par 2. The frnxinle.db2 shell does not seem to be updated. It\par creates a CM v6.1 database (it shoudlcreate a v7.1 database). The\par new tables are missing (ie SBTCOPIES) . When the bind runs,\par "table not found" error messages are received.\par \par FIX DESCRIPTION:\par Modified the aix db create script to add the missing tables and fixed the\par index column names\par \par *************************\par \par APAR NUMBER: IR43486 / AIX\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par Warning errors from DB2 during a PREPARE for a dynamic query when retrieving\par an object resulted in a failure of the retrieve.\par \par FIX DESCRIPTION:\par In the case of receiving a warning code during a PREPARE, log the SQLCODE\par but attempt to continue the processing (it more often then not will be\par successful).\par \par *************************\par \par APAR NUMBER: IR46025\par COMPONENT: CS CAPI Toolkit\par \par APAR DESCRIPTION:\par Custom written user application terminates with a Dr. Watson\par error message indicating module frnndamn.exe, and text of:\par 'Exception: Access violation (0xc0000005)'. The application is\par used to load data into CM. Increasing FRNHEAPSIZE delays the\par access violation, setting it very small causes it to happen\par almost immediately. Tracing the application revealed that the\par access violation is actually in frnnslap.dll (which is a part of\par frnndamn.exe). This appears to be a memory leak in folder\par manager.\par \par FIX DESCRIPTION:\par 1. Daemon has been changed to handle error correctly when no more memory is\par available instead of continuing, and thus causes the crash.\par 2. Folder MAnager API, SimLibAddFolderItem, and several other API's, has\par been changed to always free the response block regardless of return code\par is good or bad. This will avoid memory leak when error occurs.\par \par *************************\par \par APAR NUMBER: IR44629\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par OLD PROBLEM DESCRIPTION (NOT ACCURATE):\par Migrator fails to delete a 'D' status object. The following\par messages are posted: FRN9763A, FRN9763A,FRN9767A, FRN9763A\par FRN9763A and FRN9860A rc9763. The row in BASE_OBJECTS shows the\par volume where the file is located does not belong to the collec-\par tion. This condition was caused by two quick requests for\par collection changes without running destager in between the\par requests. In the case of this customer, collections are\par assigned by index class. A user reindexed the same itemid twice\par quick enough that destager did not have a chance to run. The\par second collection change used the undestaged row from the first\par collection change and then flagged it with 'D' status which then\par shielded it from the destager. The problem is that the\par collection change process copies the source row without altering\par the file name and path. It is expected that destager will do\par this. Destager never gets a chance so the row is left with an\par invalid volume path and 'D' status from the second\par collection change. Migrator can not mount this (ADSM) volume\par and fails. The impact is that there are 6 messages per error\par which creates a large frndiag.log and the through put of\par migrator can be adversly affected.\par ---------------------------------------------------------------------------\par NEW PROBLEM DESCRIPTION:\par Migrator fails to delete a 'D' status object. The primary\par message is FRN9860A rc9763 but FRN9763A and FRN9767A usually\par preceed it. The row in BASE_OBJECTS is identified by the\par 'object' in the FRN9860A message which is a timestamp that\par replaced the original OBJ_OBJECTNAME at the time the delete\par status was changed. The OBJ_VOLUMEID will relate to an\par ADSM/TSM SMS definition that will not belong to the storage\par class.\par This condition is the result of rapid collection changes (at\par least two) where the original source volume was ADSM/TSM and\par destager is either disabled or the collection change occurs so\par rapidly that destager is inbetween cycles. The first\par collection change created a 'U' status object that would\par normally be handled by destager. It is the second collection\par change that processes the 'U' status such that the odd 'D'\par status BASE_OBJECTS row is created.\par This APAR number will be used to identify this issue in CM 6.1 and 7.1\par fixpacks/CSDs (AndyM).\par \par FIX DESCRIPTION:\par During reindex, if the object's status is 'U', there is no need to\par delete the file in the original storage system.\par \par *************************\par \par APAR NUMBER: IR44519\par COMPONENT: System Administration\par PMR NUMBER: 08852,075,724\par \par APAR DESCRIPTION:\par Userexit dll names should be restricted to length of 8 characters to avoid\par confusing errors\par \par FIX DESCRIPTION:\par Modify dialog to not allow more than 8 characters in userexit dll name\par \par *************************\par \par APAR NUMBER: IR46455\par COMPONENT: CS CAPI Toolkit\par PMR NUMBER: 48321,090,618\par \par APAR DESCRIPTION:\par If the SimLibReadAttr API call is issued with the System\par Attribute OIM_ID_ITEM_CREATE_TIMESTAMP, the call returns an\par empty string instead of the expected timestamp.\par \par FIX DESCRIPTION:\par If the SimLibReadAttr API call is issued with the System Attribute\par OIM_ID_ITEM_CREATE_TIMESTAMP, the call returns an empty string instead\par of the expected timestamp.\par A type cast was missing during an if statement comparision therefore the\par comparision always fail. This problem was present in the functions\par FM_ReadAttr and FM_WriteAttr2. Add a type cast so both data values can be\par compared using the same data type.\par \par \par ****************************************\par Fixpack 710.1\par ****************************************\par \par APAR NUMBER: IR44458\par COMPONENT: Toolkit / 5648D0451\par \par APAR DESCRIPTION:\par When calling simlibsearch with the null (0 Length) search string client\par receives FRN6772A error message.\par \par FIX DESCRIPTION:\par In LibPackageHostVarValue function (in frnpllrs.c) set string length to\par 1 when host var's attrType is varchar and host var string is null and\par the usOperator is relational.\par \par *************************\par \par APAR NUMBER: IR44921\par COMPONENT: Toolkit / 5648D0451\par \par APAR DESCRIPTION:\par FRN8635A - Timeout occured waiting for the Library Server to respond to\par a request. The program times out at the retreive step (ExtRC=8635).\par DB2 traces show that the update and retrieve are sent to DB2 as two\par different units of work, so the retrieve ends up waiting for the update\par to finish, which won't happen until the retrieve finishes. A classic\par deadlock / timeout situation.\par \par FIX DESCRIPTION:\par Depending whether we are in a transaction or not, derive the proper\par Library Client session handle to be used within SimLibqueryPartExtSrch.\par This APAR also fixes a login problem where ProcessACLRows causes an\par access violation during logon.\par \par *************************\par \par APAR NUMBER: IR45091\par COMPONENT: Toolkit / 5648D0451\par \par APAR DESCRIPTION:\par API SimLibCreateItem cannot handle system defined attributes and failed\par with error FRN6216.\par \par FIX DESCRIPTION:\par Changed SimLibCreateItem code to allow handling of system-defined attributes.\par \par *************************\par \par APAR NUMBER: IR45268\par COMPONENT: Object Server / 5648D0411\par \par APAR DESCRIPTION:\par Remote data migration from OS/2, WinN, or AIX v241 to CM 61 or later\par leaves files on the Target Object Server's "staging" volume without\par DB entries due to a design change in transaction logic in CM61.\par These HOMELESS files reside on the "staging" volume and are\par not destaged/archived to other volumes. The customer subsequently\par has their "staging" volume fill up.\par \par FIX DESCRIPTION:\par Remote migration cleanup on CM61/71 destages/archives the HOMELESS\par files to other volumes and the "staging" volume then reclaims space.\par On the Object Server, the environment variable FRN_DESTAGEALL=1 must be\par set for the destager to handle these unique files.\par \par *************************\par \par APAR NUMBER: IR45227\par COMPONENT: Common Services / 5648D0431\par \par APAR DESCRIPTION:\par When setting environment variable DB2CODEPAGE to a different value on a\par CM client system and then logging on to the server, the client receives\par error "FRN8180A The system cannot find either the message file or the\par message in the message file".\par \par FIX DESCRIPTION:\par CM codepage conversion relies on the DB2 OSS layer. Setting this DB2\par environment variable changed the behavior of CM. We fixed it by removing\par the dependency on DB2CODEPAGE in CM codepage conversion.\par \par *************************\par \par APAR NUMBER: IR45234\par COMPONENT: Object Server / 5648D0411\par \par APAR DESCRIPTION:\par Replication within same server had permission problems in staging volume.\par Subsequently the files were never replicated to the archive volume.\par \par FIX DESCRIPTION:\par Migrator code changed to fix this problem.\par \par *************************\par \par APAR NUMBER: IR45320\par COMPONENT: Toolkit / 5648D0451\par \par APAR DESCRIPTION:\par When hObj->sVersion is not 0, any media object cannot be retrieved.\par SimLibOpenObject gets rc= 8682\par \par FIX DESCRIPTION:\par In SimLibOpenObject code, after the LibRetrieveItemPartAsync finishes\par the RETRIEVE_ORDER_CL order creation, if sVersion > 0, then reset the\par szElementKey field in the element table using sVersion -1 as the internal\par version number so the szElementKey field will match the media object name\par sent over from the Object Server instead of unmatching object name in the\par element table.\par \par *************************\par \par APAR NUMBER: IR45627\par COMPONENT: Toolkit / 5648D0451\par \par APAR DESCRIPTION:\par After loading one or more objects into CM, either SimLibUpdatePartExtSrch\par or SimLibUpdateObject is called to update the content of the objects. If\par the size of any object is greater than 67000 bytes, SimLibUpdatePartExtSrch\par or SimLibUpdateObject will fail on AIX with return code = 6256, or\par SIM_RC_RESIZE_FAILED, and returned hErrLog = 6395, or\par SIM_RC_WRITEOBJECT_FAILED. If Folder Manager trace is turned on, it will\par report a return code of 6256 by SimLibWriteObject. As a result, the update\par activity fails.\par \par FIX DESCRIPTION:\par Function CmnRetrieveFileData called fread() incorrectly. The third parameter\par of fread() function call should be 1, not the size of the file. Only the\par second parameter should be the size of the file, but not both the second and\par third parameters.\par \par *************************\par \par APAR NUMBER: IR45951\par COMPONENT: Toolkit / 5648D0451\par \par APAR DESCRIPTION:\par The 16-byte itemID's currently are generated by clients randomly. This may\par cause performance problems for customers if the number of itemId's is huge.\par To solve that performance problem, a Library Client user exit is created to\par allow users to use their own algorithms to generate new itemID's in a more\par sequential manner.\par \par FIX DESCRIPTION:\par The default userexit is a no-op function and simply returns 0 to the caller.\par A sample userexit (commented out) is provided in this userexit. To use the\par sample method, users can simply un-comment it and modify it anyway desirable\par by the users, and build the userexit again. So the default behavior of this\par userexit is business as usual, that means no impact to existing customers,\par unless the userexit is modified and rebuilt by the customers.\par \par User exit: LibCreateItemID (generate item ID user exit)\par \par Format: LibCreateItemId (pszItemID,pszWorkStationID,sIndexClassID,pszUserID,\par sSemType)\par \par PURPOSE: When an application creates an item, Content Manager assigns the\par item several system-defined attributes. One of those system-defined\par attributes is an item identifier (item ID), which is randomly created by\par the Library Server Client. This user exit allows you to change the way\par the Library Server client generates item IDs. You can use the sample in\par this user exit to have the library client create sequential item IDs. To\par use the sample, remove the comments tags in the code and recompile.\par \par You can also modify the sample code and add your own algorithms. The\par library client encrypts the password that is associated with the user\par before it is transmitted to the library server. Use LibEncryptPassword\par if you want to provide your own encryption algorithm or eliminate the\par password encryption.\par \par Note: If you don't "uncomment" the sample code, the CM library server\par client will create item IDs as it is originally designed to do; random ID\par generation.\par \par PARAMETERS:\par \par pszItemID: CHAR - input and output\par A parameter passed in by the internal code.\par \par pszWorkStationID: CHAR - input\par The character string of the host name. The maximum length for this string\par is 18 bytes, which includes the null terminator.\par \par sIndexClassID: SHORT - input\par The index class identifier.\par \par pszUserID: CHAR - input\par The NULL-terminated character string that specifies the password for the\par user ID. This parameter is not case sensitive.\par \par sSemType: SHORT - input\par The semantic type of the item to store. The semantic type of an item\par indicates its general classification. Use a 2-byte integer. The predefined\par semantic types are:\par SEMTYPE_ACL\par Indicates that the item is an access list.\par SEMTYPE_ANNOTATION\par Indicates that the item is an annotation.\par SEMTYPE_DOCUMENT\par Indicates that the item is a document.\par SEMTYPE_FOLDER\par Indicates that the item is a folder.\par SEMTYPE_HISTORY\par Indicates that the item contains history events.\par SEMTYPE_MGDS\par Indicates that the item contains MGDS data.\par SEMTYPE_NOTE\par Indicates that the item is a note.\par SEMTYPE_USER\par Indicates that the item is a user item.\par SEMTYPE_WORKBASKET\par Indicates that the item is a workbasket.\par SEMTYPE_WORKFLOW\par Indicates that the item is a workflow.\par SEMTYPE_NONE\par Indicates that the item has no semantic type.\par All other values are for use by applications. The library server does\par not interpret them, so they can be used by the application in any way\par you want to.\par \par RETURN VALUES:\par The function returns a value of SHORT with zero for SUCCESS and -1 for\par FAILURE.\par \par COMMENTS:\par The function is located in the FRNPLCPW.C module. The LibCreateItemID\par function is a single function in FRNWLCPW.DLL. You can replace FRNWLCPW.DLL\par with your own FRNWLCPW.DLL.\par \par *************************\par \par APAR NUMBER: IR46219\par COMPONENT: Object Server / 5648D0411\par \par APAR DESCRIPTION:\par Object Server Recovery deletes files not found in the database. Normally\par this is recommended, but in the case of APARS IR45028 and IR45268, these\par files will unintentionally be left in an abnormal state and are not\par in the database. So deleting these files before IR45268 is applied and\par run will permanently remove these files.\par \par FIX DESCRIPTION:\par The default behavior of Object Server recovery NO LONGER deletes files not\par found in the database. If you wish this behavior to happen, then you must\par set the Environment variable FRNRECDELETE=1 and run recovery to delete the\par files.\par \par \par ***********************************************\par 4. Documentation APAR Fixes with Descriptions\par ***********************************************\par \par APAR NUMBER: IR46244\par COMPONENT: Admin\par \par APAR DESCRIPTION:\par CM71 online help information does not reflect (contrary to CM61\par and earlier releases) that the ctrl key must be depressed in order\par to select/add an user to multiple user groups from the listed groups.\par \par FIX DESCRIPTION:\par In the Content Manager for Multiplatforms System Administration\par Version 7 Release 1, the following online help should be as follows:\par \par New User panel: Select the user groups to associate with the user.\par To select multiple user groups, hold down the Ctrl key when\par selecting the groups.\par \par *************************\par \par APAR NUMBER: IR45737\par COMPONENT: Admin\par \par APAR DESCRIPTION:\par Customer reports that the System Admin Client does not show\par correct data on the Staging area as system is running. They\par have to shut down and reboot to show correct data. The\par SysAdmin Client is working as designed in this case, and\par the customer needs to use the command interface (frncmd)\par to obtain this information.\par \par FIX DESCRIPTION:\par In the Content Manager for Multiplatforms System Administration\par Guide Version 7 Release 1, the following information is added:\par \par Chapter 6, Server Control, "Monitoring and controlling the servers"\par \par For AIX, or Windows NT: To monitor the current status of the\par staging area, use the command utility with the status command\par (see Command utility on page 44). For example, to monitor current\par status on the object server named LDVOSAIX, enter:\par \par frncmd ldvosaix status\par \par *************************\par \par APAR NUMBER: IR46475\par COMPONENT: Admin\par APAR DESCRIPTION:\par In the CM v7.1 SysAdmin Guide, Ch 11, p118, the imlclpix command is\par described as being used to "Remove all index entries from an existing\par index on the text search server." This statement is somewhat half true\par ... it should say "This is a cleanup function for library server\par consistency. This removes all index entries from an existing index on\par the text search server which no longer exists in a CM library server"\par \par Command line, imlclpix -h, gives the correct information.\par \par FIX DESCRIPTION:\par In the Content Manager for Multiplatforms System Administration\par Guide Version 7 Release 1, the following information is corrected:\par \par page 118, Chapter 11: Text search administration\par \par The text under the syntax diagram for "Delete Content Manager\par documents from an index (icmlclpix)" should read:\par Purpose: This is a cleanup function for library server consistency.\par This removes all index entries from an existing index on the text\par search server which no longer exists in a Content Manager library server.\par \par *************************\par \par APAR NUMBER: IR46263\par COMPONENT: Object Server\par \par APAR DESCRIPTION:\par The Planning and Installing Content Manager Version 7.1 manual\par (GC27-0864-01) discusses the need for an entry in the\par FRNOLINT.TBL for the client messenger under certain\par circumstances. (See Chapter 9, 'Configuring network\par communication for Content Manager components', topic\par 'Understanding Network Tables', sub-topic 'Client toolkit\par notes', page 182.) However, the correct syntax and parameter\par definitions for the FRNODAOS statement, and when you need to use\par them, are not in the in the 'Network table file syntax' section\par of chapter 9, which also does not document FRNODAOS as a\par reserved word.\par \par FIX DESCRIPTION:\par In the Content Manager for Multiplatforms Planning and Installing\par Guide Version 7 Release 1, the following information is corrected\par and added:\par \par Page 182, Client toolkit notes:\par Delete the following text:\par Optionally, specify the port and IP address for the client messenger\par to use for object storage and retrieval. Specifying the IP address\par is useful when the client contains multiple communications cards\par or when there is a router that performs NAT (network address\par translation) between the client and servers. In the latter case, the\par external address must be the IP address.\par \par And replace with the following text:\par In some configurations it may be desirable to place the CM toolkit\par and its applications on one side of a firewall while the servers\par are the other side of a firewall. Also, it might be desirable to\par choose which communications network card is to be used for object\par transfers to and from the object server, such that object transfer\par occurs on a specified network, given that the client workstation\par has access to multiple networks. Accommodating both such\par configurations is done through the creation of a local\par client network table entry on the client toolkit workstation.\par \par Use the network table generator to\par ADD\par LOCAL\par CLIENT\par specify Port\par specify IP Address\par \par In the case of a workstation attached to multiple networks,\par specify the IP address of the communications card that is desired\par for object transfer to and from the object server. Port, in this\par case, can be any port in the valid port range specified in\par \par In the case of a firewall, it can be somewhat restrictive.\par The firewall must use static NAT, and not dynamic. With static NAT,\par each client must have an internal ip address, known to the servers,\par mapped to an external ip address. With such a mapping, use the\par network table generator at the client toolkit workstation to add\par the local client definition. Specify the internal IP address.\par The port to be specified is usually the one in which the firewall\par is configured to permit. Most administrators find that using the\par same port number as the library server works best, given that\par the client machine doesn't contain a library server itself.\par That way, the firewall can be configured to allow traffic for that\par port number and it will work for both the traffic going to the\par library server and from the object server.\par \par Finally, in both the firewall and multi-honed configurations,\par on a Windows toolkit platform, the administrator must determine\par whether or not there will be multiple applications run on the\par workstation. For example, Does there exists the CM client\par application and a custom application, or sys admin on the\par workstation? This situation can be called a multi-process\par configuration, where multiple applications share the client\par configuration. Conversely, if only one application is\par to be run on the workstation, it is a single-process configuration.\par It is important to determine which environment the workstation will\par be running and set environment variables as follows:\par \par * single-process configuration - add FRNSINGLEPROCESSCLIENT\par to system environment variables setting its value to 1.\par * multi-process configuration - add FRNSINGLEPROCESSCLIENT\par to system environment variables setting its value to 0.\par Additionally, update the system environment variable\par FRNHEAPSIZE=2048. In this environment, the applications\par will be sharing the client messenger daemon and\par requests/responses to/from the library server and in some\par cases, objects to/from the object server will be placed in a\par shared memory heap. The setting of a larger shared memory heap\par is required. 2048 translated to 4K X 2048 = 8M of shared memory.\par This should be sufficient for most requests, responses, and\par objects. But if the application starts receiving out of\par memory failures, (because of large objects or larger results\par sets from queries), the FRNHEAPSIZE should be increased.\par \par Configuring for the default client messenger\par \par Nothing further needs to be configured in the default toolkit\par configuration.\par \par Page 195, add the following text to Network table\par file reserved words: FRNODAOS\par \par Page 195, add to definition column which states\par For library servers and object servers, the server name is the\par same as the database name.\par For the client messenger, the name is FRNODAOS\par \par *************************\par \par APAR NUMBER: IR42892\par COMPONENT: Object Server\par \par APAR DESCRIPTION:\par The message FRN9020A is used to reflect an error received from\par the protocol that is in use. This can TCP/IP as well as APPC.\par The message text needs to be changed to reflect this usage.\par \par FIX DESCRIPTION:\par In the Content Manager for Multiplatforms Version 7 Release 1\par Messages and Codes manual, the following message is\par updated with TCP/IP information:\par \par FRN9020A Communications Manager/2 or SNA Server/6000 returned\par an advanced program-to-program communications (APPC) error or\par transmission control protocol/internet protocal (TPC/IP) error.\par \par Explanation: Communications Manager/2 or SNA Server/6000 issued an\par APPC or TPC/IP error, which caused the client or server program\par to stop processing.\par \par Component: Communications Isolator\par \par #Define: ISOERR_APPC_ERROR\par \par Action: Check the error logging facility to see which APPC or TCP/IP\par error code was issued. See the error codes in the Communications\par Manager/2 APPC publication or TCP/IP publication and correct the\par problem.\par *************************\par \par APAR NUMBER: IR44174\par COMPONENT: Object Server\par \par APAR DESCRIPTION:\par The Planning and Installation Guide, GC26-9831-00, Chapter 4,\par Installing Content Manager components on AIX, Step 4.Installing\par the object server on AIX, states the frnbind.obj should be run\par in #7. under the Oracle set of instructions. Development states\par this is not true\par \par FIX DESCRIPTION:\par In the Content Manager for Multiplatforms Planning and Installation\par Guide Version 7 Release 1\par \par Pages 62-65, Step 4. Installing the object server on AIX\par \par Page 65, under Table 40, delete the following item\par (because you do not need to bind the database for Oracle):\par \par 7. If you did not create a database while using the wizard,\par bind your existing database. Enter:\par frnbind.obj\par \par *************************\par \par APAR NUMBER: IR44499\par COMPONENT: Object Server\par \par APAR DESCRIPTION:\par OBJECT SERVER WITH A LARGE STAGING DIRECTORY BUT NOT ON A\par DEDICATED SPACE WILL ENCOUNTER EXTENDED STARTUP AND RECOVERY\par \par If a large staging area is to be used, it is recommended to\par utilize a dedicated staging area. If the area is not a\par dedicated partition, the object server recovery and startup,\par which performs an automatic recovery, will be extended due to\par the large number of files that will be reviewed.\par Installations migrating from previous versions of Visualinfo\par should strongly consider implementing this option. In addition\par to setting STA_DEDICATED='Y' in the BASE_STAGING table, modify\par the value of STA_PATH to the newly defined dedicated partition.\par \par FIX DESCRIPTION:\par In the Content Manager for Multiplatforms Planning and Installation\par Guide Version 7 Release 1, the following information is added:\par \par Page 52, Step 4 Installing the Object Server on Windows,\par \par Fast object server recovery is now Fast object server startup\par \par Page 65, Step 8 Installing the Object Server on AIX, add the\par following information:\par \par Fast object server startup\par \par The object server should be started and shutdown once\par after installation. If the staging area is a dedicated space,\par you see that a column added to the object server table\par BASE_STAGING called STA_DEDICATED. This column is "dedicated"\par because it is only used by the object server, and only\par staged blobs are stored in it.\par \par To update the server:\par \par 1. Log on to object server admin user ID\par Example: su - osadmin\par \par 2. Connect to the object server database\par Example: db2 connect to objsrvrx\par \par 3. Update the BASE_STAGING database table, column STA_DEDICATED,\par using the following query:\par Example: db2 UPDATE BASE_STAGING SET STA_DEDICATED = 'Y'\par \par \par This command queries the file system to find out how much space\par is being used on the file system. This avoid a time consuming\par filter of the files in staging. The result is a close to constant\par startup time independent of the number of files in the staging area.\par If STA_DEDICATED is set to 'N' then the startup time depends on how\par many files are in the staging area.\par \par Never set STA_DEDICATE to 'Y' if the file system or partition holds\par files other than object server blobs. In the system administration\par program, do not allocate the staging space to be the size of the\par entire partition. Allow for some level of error as file systems\par report of space is not always completely usable due to overhead in\par the file systems.\par \par For most file systems the error is less than 10%. A good starting\par point for a 10,000 MB partition would be to set staging space to\par 9,000 MB with a purge start of 90% and a stop of 80%. These are\par only guidelines -- you should monitor the staging area as it\par approaches its full state and during periods of intense activity\par be able to ensure the staging file system does not get completely\par full at any time. If the file system is never close to being full,\par then the values can be increased. Destaging and purging problems\par might result if the values are set incorrectly.\par \par *************************\par \par APAR NUMBER: IR46023\par COMPONENT: Object Server\par \par APAR DESCRIPTION:\par Customer reports that Object Server start up time is 5.5 hours.\par The Object Server appears to be looking at every file in the\par staging area ( ubosstg ) which has approximately 190,000 files.\par \par FIX DESCRIPTION:\par In the Content Manager for Multiplatforms Planning and Installation\par Guide Version 7 Release 1\par \par Page 65, Step 8 Installing the Object Server on AIX, add the\par following information:\par \par Fast object server startup\par \par The object server should be started and shutdown once after\par installation. If the staging area is a dedicated space, you\par see that a column added to the object server table BASE_STAGING\par called STA_DEDICATED. This column is "dedicated" because it is\par only used by the object server, and only staged blobs are\par stored in it.\par \par To update the server:\par \par 1. Log on to object server admin user ID\par Example: su - osadmin\par \par 2. Connect to the object server database\par Example: db2 connect to objsrvrx\par \par 3. Update the BASE_STAGING database table, column STA_DEDICATED,\par using the following query:\par Example: db2 UPDATE BASE_STAGING SET STA_DEDICATED = 'Y'\par \par This command queries the file system to find out how much space\par is being used on the file system. This avoid a time consuming\par filter of the files in staging. The result is a close to constant\par startup time independent of the number of files in the staging area.\par If STA_DEDICATED is set to \'a1\'a6N\'a1\'a6 then the startup time depends on how\par many files are in the staging area.\par \par Never set STA_DEDICATE to yes if the file system or partition holds\par files other than object server blobs. In the system administration\par program, do not allocate the staging space to be the size of the\par entire partition. Allow for some level of error as file systems\par report of space is not always completely usable due to overhead in\par the file systems.\par \par For most file systems the error is less than 10%. A good starting\par point for a 10,000 MB partition would be to set staging space to\par 9,000 MB with a purge start of 90% and a stop of 80%. These are\par only guidelines -- you should monitor the staging area as it\par approaches its full state and during periods of intense activity\par be able to ensure the staging file system does not get completely\par full at any time. If the file system is never close to being full,\par then the values can be increased. Destaging and purging problems\par might result if the values are set incorrectly.\par \par *************************\par \par APAR NUMBER: IR38764\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par VisualInfo - Digital Library - trace - FRNTRC - FRNTRACE\par The discussion contained in Messages and Codes Chapter 3 Tracing\par Facility does not clearly identify the relationship of the\par controls (and variables) to the effect on the trace. For\par example, the variable FRNTRACELEV and those that follow almost\par seem to be unrelated to the FRNTRACE function by the way it is\par worded.\par The file 'frntrace.ctl' does not exist on NT. How does\par FRNLOGMAXMB relate to the -l parm for FRNTRC, and if there is no\par connection, what does FRNLOGMAXMB really do? OS2 is referred to\par repeatedly in the discussion for FRNTRACE but it is not\par functional on the OS2 platform for VI.\par \par FIX DESCRIPTION:\par In the DB2 Digital Library Messages and Codes\par Version 2 Release 4 manual, the following information is deleted:\par \par Page 6, Chapter 2. Tracing facility\par \par Deleted text: Tracing on AIX and Windows NT: Digital Library\par also provides additional features through its Independent\par Trace Facility (ITF) for collecting trace information.\par \par Pages 6 through 19: all information describing the following\par options is not valid and is deleted:\par \par * [-m mask]\par mask= products. event-types. components. functions\par * [-e maxSysErrors]\par Stop tracing after maxSysErrors have been recorded\par * [-r maxRecordSize]\par Truncate trace records at maxRecordSizebytes\par * [-rc return-code]\par Suspend tracing when return-code is encountered\par * [-p processId[. threadId]]\par Process ID and thread ID to trace. Thread ID does not apply\par to AIX.\par * [-c companion-id]\par The companion ID to trace in a server environment\par * [-s | -n | -mmio | -f fileName]\par Send trace records to shared memory, native trace facility,\par performance monitoring hardware, or a file\par * [-crash crash-mask]\par crash-mask = product-id. event-types. components. functions.\par trace-point\par Cause the program to exit when a specific trace point is reached\par \par *************************\par \par APAR NUMBER: IR44974\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par There is a need to document the limits of what the Optimization\par utility can be expected to do for the customer. For medium to\par large installations to get the best performance from the VI\par databases the customers' DBA will need to manage the database\par through the database utility functions that come with the\par database product\par \par \par FIX DESCRIPTION:\par In the Content Manager for Multiplatforms System Administration\par Guide Version 7 Release 1, the following information is added:\par \par Page 72, Chapter 9, Database installation and maintenance\par \par The optimization utility\par \par The optimization utility that is provided with VisualInfo is\par intended to be used for a small to a moderately sized database.\par This utility performs the basic optimization functions necessary\par to keep your server database performing optimally. As your system\par grows and becomes more complex, it is recommended that optimization\par of the server database be performed by a qualified database\par administrator using the tools provided by your database product.\par As a rule of thumb you may use the following guidelines to\par determine when your system has gotten to complex for the\par optimization tool of VisualInfo:\par \par System with more than 100K items\par System with more than 20 index classes\par System containing multiple database indexes on an index class\par \par *************************\par \par APAR NUMBER: IR42533\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par For the RELCRITERIASTRUCT used by Ip2SuspendItem,\par the doc says that itemDeadlineWB is ignored if the\par tsExpDateTime is NULL. TL says this isn't true and\par that an itemid needs to be filled in anyway (a copy of\par what's in itemidReadyWB should do). The doc should\par be modified to reflect this.\par \par FIX DESCRIPTION:\par In the Content Manager for Multiplatforms C Application\par Programming Reference for Workstation Vol 1 Version 7 Release 1\par \par Page 930, RELCRITERIASTRUCT (Release Criteria Data Structure)\par \par RELCRITERIASTRUCT\par \par description of itemidDeadlineWB has changed to:\par \par ITEMID - input\par \par The item ID of the workbasket to send the suspended item to\par if the expiration time criteria are satisfied.\par \par Add the following text: This field cannot be NULL. If you\par want to release the suspended item due to other criteria\par (e.g., not deadline), then you need to copy the item ID from\par the itemidReadyWB or pitemidReadyWBArray to itemidDeadlineWB\par parameter.\par \par Delete the following text: This field is required if the\par usReleaseType field contains the value OIM_SUSP_ANY_CLASS\par or OIM_SUSP_ALL_CLASS, and if pitemidReadyWBArray has not been\par specified. Otherwise, this field is ignored.\par \par *************************\par \par APAR NUMBER: IR45849\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par Documentation in the Application Programming Guide for\par Windows v7.1 (APG) is incorrect concerning proper interpretation\par of the correct column width returned by LibGetQueryReplyInfo.\par with more detail of: Use the function DmnFieldWidth\par (in frnndapi.lib) to intrepret the correct column width\par regardless of data type.\par \par FIX DESCRIPTION:\par In the Content Manager for Multiplatforms Application Programming\par Guide Version 7 Release 1, the following information is added:\par \par Use the function DmnFieldWidth (in frnndapi.lib) to intrepret\par the correct column width regardless of data type. For example:\par \par if (pCol->col_type %2==1)\par \{\par if (pCol->col_width<=1)\par return;\par \par /* Skip over the NULL byte indicator */\par \par pbRowData++;\par usFieldLen =\par DmnFieldWidth(pCol->col_type,pCol->col_width,pCol\par ->col_desc_len, bFormatted) - 1;\par \}\par else\par usFieldLen =\par DmnFieldWidth(pCol->col_type,pCol->col_width,pCol\par ->col_desc_len, bFormatted);\par \par \par *************************\par \par APAR NUMBER: IR45861\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par Content Manager v7.1 Application Programming Guide\par for Windows Appendix B - User Exit Routines\par \par The customer is building a SaveRecordUserExit module,\par and is having trouble getting the USEREXITSTRUCT to map\par properly to the actual data.\par \par FIX DESCRIPTION:\par In the Content Manager for Multiplatforms Application\par Programming Guide for Windows Version 7 Release 1\par \par Appendix B, User Exit Routines, Client for Windows User Exits\par \par itemidWorkflowid field has changed from USHORT to ITEMID\par \par *************************\par \par APAR NUMBER: IR46064\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par Chapter 12 of 'Planning and Installing Content Manager' provides\par instructions for using the utility for migrating the library\par server database to the CM 7.1 version. The instructions state\par to run frnnmiut.db2.exe from the CD. This does not work.\par The executable and other files must be copied from the CD to the\par hard drive to be executed. A proceedure naming what files must\par be moved is required and the softcopy version of the pubs should\par be updated.\par \par FIX DESCRIPTION:\par In the Content Manager for Multiplatforms Planning\par and Installation Guide Version 7 Release 1\par \par Chapter 12. Migrating a Windows or an AIX Content Manager\par database\par \par page 237, Migrating a DB2 library server database on Windows,\par the following information is added to Step 2:\par \par Copy the migration utility (frnnmiut.db2.exe) and the bind file\par (frnomiut.bnd) into a local directory on the Library Server\par to be migrated. These two files must reside in the same\par directory, and the user must have read/write privileges\par in that directory. Run the migration utility from your\par local drive.\par \par page 242, Migrating a DB2 library server database on AIX,\par the following information is added to Step 2:\par \par On AIX,'su' to the LSADMIN user ID. Create a temporary directory\par where LSADMIN has read / write privileges. Copy all the files\par from /AIX/migrate/db2 and /AIX/migrate/db2/bind from the\par installation CD to the temporary directory (all the files\par must be the same temporary directory). Run frnxmiut.db2\par from the temporary directory.\par \par *************************\par \par APAR NUMBER: IR42479\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par For both the C version (COMPID 569725044) and the Java Sysadmin,\par if the library server configuration is set for a single logon\par per user, the utilities that can be scheduled such (as expired\par time) will post FRN7213A. The utility requires the ability to\par make a second connection when the utility starts. The chapter in\par System Administration Guide ' System setup and system maintenance'\par fails to mention that library server configuration must be set for\par multiple sessions if you want to use the system admin. GUI server\par utilities.\par \par FIX DESCRIPTION:\par Ensure the library server configuration is not set for 'single\par session' in the 'Active sessions(Per UserID)' section on the\par 'Access' page of the library server configuration.\par \par *************************\par \par APAR NUMBER: IR47209\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par The customer countered he is running CM 7.1 and that the\par System Administration Guide says:\par \par "Restriction: If your instance of the system administration\par client is running through the system administration gateway,\par then the library server and system administration gateway\par must be logged on at the scheduled time for the utility to\par run."\par \par This is clearly a different statement and implies if the\par gateway is not used, then you do not have to be logged on.\par The customer feels the way the product works has changed\par and if the gateway is not being used, the user does not have\par to be logged on.\par \par FIX DESCRIPTION:\par \par In the Content Manager for Multiplatforms System\par Administration Guide V7.1, the following information is updated:\par \par \par In order for any of the database utilites to run at a scheduled time,\par the user that scheduled the utility must be logged on to the library\par server by way of the system administration program.\par \par *************************\par \par APAR NUMBER: IR46134\par COMPONENT: Library Server\par \par APAR DESCRIPTION:\par Static generation of an expression that includes the NOTIN\par operator successfully generates a dll, but does not include\par the sql with the NOTIN expression. Each subsequent\par submission of the same expression will generate a new static dll,\par each time excluding the expression. No errors are reported\par in the frndiag.log\par \par FIX DESCRIPTION:\par In the the Content Manager for Multiplatforms Application\par Programming Guide and Application Programming Reference, the\par following information is added:\par \par Because of the complex nature of the query searches involving IN or\par NOT IN, search conditions will not be optimized to static search dlls.\par \par *************************\par \par APAR NUMBER: IR47572\par COMPONENT: OBJECT SERVER\par \par APAR DESCRIPTION: \par The Object Server Recovery Utility ( frnrecdb.obj ) ignores all\par command line parameters and uses the parameters hard coded in \par the script. It uses current environment variables to select \par the database to run against, and the configuration file to use.\par \par FIX DESCRIPTION:\par In the Content Manager for Multiplatforms System\par Administration Guide V7.1, the following information is updated:\par \par On Page 78\par \par The following statement is incorrect:\par frnrecdb.obj /d ldvosaix /c ibmconfig /s\par \par Change to:\par frnxlbrc /d ldvosaix /c ibmconfig /s\par \par \par *********************************************\par END OF README\par *********************************************\par }