Licensed Materials - Property of IBM
Copyright IBM Corp. 2008  All Rights Reserved.
US Government Users Restricted Rights - Use, duplication or
disclosure restricted by GSA ADP Schedule Contract with IBM Corp.

PRODUCT     : IBM Tivoli Change and Configuration Management Database
INTERIM FIX : 7.1.2.0-TIV-ITADDM-FP0004
RELEASE     : TADDM v7.1.2
DATE        : 2009/08/26
LAST UPDATE : 2009/08/26

You should print and read this document and all associated references 
before applying this maintenance package. The online page where this 
package was downloaded is the most up to date information and supersedes 
all other versions of this document.  

I. INTERIM FIX.

   APARs Content:

IZ24240,IZ26079,IZ30547,IZ30697,IZ33032,IZ33201,IZ33287,IZ33320,IZ33341,IZ33449,
IZ33499,IZ33566,IZ33568,IZ33633,IZ33789,IZ34275,IZ34285,IZ34289,IZ34516,IZ34535,
IZ35016,IZ35454,IZ35608,IZ35834,IZ35849,IZ36032,IZ36133,IZ36156,IZ36566,IZ37208,
IZ37486,IZ37725,IZ37779,IZ25917,IZ34061,IZ35838,IZ35967,IZ36502,IZ36551,IZ36919,
IZ36923,IZ37736,IZ37781,IZ38000,IZ38274,IZ38841,IZ38847,IZ38903,IZ39294,IZ39330,
IZ39377,IZ39461,IZ39719,IZ39729,IZ39813,IZ39906,IZ40018,IZ40110,IZ40192,IZ40456,
IZ40544,IZ41212,IZ41222,IZ41914,IZ41915,IZ41935,IZ42157,IZ42199,IZ42234,IZ42342,
IZ42431,IZ42544,IZ42691,IZ42744,IZ42809,IZ42818,IZ43212,IZ43756,IZ07353,IZ39662,
IZ39792,IZ41223,IZ41245,IZ42331,IZ42532,IZ42617,IZ42715,IZ43139,IZ43588,IZ43670,
IZ43792,IZ43873,IZ43877,IZ43898,IZ43942,IZ44008,IZ44010,IZ44043,IZ44166,IZ44224,
IZ44255,IZ44385,IZ44507,IZ44518,IZ44531,IZ44593,IZ44626,IZ44935,IZ45169,IZ45256,
IZ45360,IZ38482,IZ42833,IZ44795,IZ44818,IZ45407,IZ45678,IZ45944,IZ45983,IZ46881,
IZ47266,IZ47621,IZ47636,IZ47640,IZ47729,IZ47742,IZ47816,IZ48011,IZ48071,IZ48095,
IZ48287,IZ48305,IZ48421,IZ48498,IZ49233,IZ49372,IZ49383,IZ49395,IZ49410,IZ49436,
IZ49581,IZ49600,IZ49614,IZ49641,IZ49701,IZ50242,IZ50262,IZ50277,IZ50299,IZ50317,
IZ50343,IZ50484,IZ50705,IZ50757,IZ50829,IZ49943,IZ50655,IZ50965,IZ50999,IZ51042,
IZ51080,IZ51112,IZ51222,IZ51303,IZ51502,IZ51571,IZ51574,IZ51648,IZ51777,IZ52340,
IZ52362,IZ52406,IZ52598,IZ52602,IZ52650,IZ52689,IZ52897,IZ52903,IZ52964,IZ52981,
IZ53393,IZ53466,IZ53510,IZ53512,IZ53561,IZ53591,IZ53630,IZ53637,IZ53797,IZ53806,
IZ53830,IZ53878,IZ53906,IZ53939,IZ53947,IZ54019,IZ54062,IZ54078,IZ54275,IZ54281,
IZ54290,IZ54291,IZ54424,IZ54440,IZ54446,IZ54450,IZ54457,IZ54519,IZ54557,IZ54817,
IZ54853,IZ55347,IZ55348,IZ55422,IZ55550,IZ55636,IZ55665,IZ55764,IZ55776,IZ55779,
IZ56124,IZ56191,IZ56257,IZ56446,IZ56516,IZ56770,IZ57710,IZ57746,IZ57931,IZ57940,
IZ57948,IZ58006,IZ58250




   Supersedes: Not Applicable
     
II. PREREQUISITES:

     Before installing Fix Pack 004, you must have one of the following software already installed on the system:

•	Tivoli Application Dependency Discovery Manager v7.1.2
•	Tivoli Application Dependency Discovery Manager v7.1.2 + IF1
•	Tivoli Application Dependency Discovery Manager v7.1.2 + IF2
•	Tivoli Application Dependency Discovery Manager v7.1.2 + FP1
•	Tivoli Application Dependency Discovery Manager v7.1.2 + FP2
•	Tivoli Application Dependency Discovery Manager v7.1.2 + FP3


III. DESCRIPTION:


Defects and Features in this Fix Pack;


Defects and Features included in this Interim Fix from 7.1.2.0-TIV-ITADDM-IF0001 thru 
7.1.2.0-TIV-ITADDM-IF0002 and Fix Pack 7.1.2.0-TIV-ITADDM-FP0001 thru Fix Pack 7.1.2.0-TIV-ITADDM-FP0003 :


1884 (2898) Common Data Model changes in IF1
   - Added classes for future sensor support.
   - For full details, please refer to Common Data Model documentation, file CDMWebsite.zip 
	in sdk directory
1893 AIX Storage Sensor Enhancements. A number of changes were made to the AIX Storage 
Sensor to reduce the number of objects stored 
in the database. This significantly improved the overall performance of the sensor.
2352 Lotus Domino 7/8.x Discovery support. This is a currency update, new features of 
these releases will not be discovery.
2383 F5 BipIP Currency Changes. F5 BipIP Currency Changes. BigIPSnmpSensor, BigIPPortSensor 
and BigIPVlanSensor were updated to support F5 Big-IP 9x devices. See the TADDM Sensor
Guide for more details on attributes discovered by the BigIp Sensors.
2703 MQServerSensor fails when discovering MQ5.3 on Windows
2705 CMDBRole and GroupPrincipal classes  missing from taddm-api-client.jar
2832 DCR-330 Firefox 3 Support (BIRT Reports). BIRT reports will now launch successfully if the 
customer is using Firefox 3.
3333 If oracle users are created separately insufficient privileges are granted: 
make_ora_user.sh sid user user.
ICA0149 TADDM restart configuration parameter needed for debugging. See "VIII. ADDITIONAL 
INFORMATION" in this readme for more information.
ICA0151 Support Foundry interfaces that return fastether(62), fastetherfx(69), or 
gigabitethernet(117) instead of ethernetcsmacd(6) for iftype.
ICA0153 Externalize VMWARE commands for sudo access. The following options may now be 
added to collation.properties:
com.collation.platform.os.command.osVersion.Vmware=sudo /usr/bin/vmware -v
com.collation.platform.os.command.vmwareCmd=sudo /usr/bin/vmware-cmd
IZ24240 Some api.sh queries return no results when it appears that they should
This happens when one tries to query a non-persistent class.  Additional error handling 
has been provided to produce a failure when non-persistent classes are queried. Additionally, 
the following information will be added to the SDK Guide:

Persistent vs. Non-Persistent classes: 
– A persistent class is a class whose instances can be stored in a database, whereas 
instances of a non-persistent class cannot be stored in a database. 
– When using MQL (Model Query Language), you can only query objects of persistent classes. 
The only exception is when you query the attribute, guid of a ModelObject (non-persistent class), 
as in the following example: 
- The attribute, members, is a ModelObject, and the following queries will return the same 
results: 
SELECT * FROM AccessCollection WHERE members.guid == 
\"E72B13789C9039BFB32E3822FE50C197\" 
SELECT * FROM AccessCollection WHERE members == 
\"E72B13789C9039BFB32E3822FE50C197\" 
– In the model javadoc (javadoc for TADDM’s CommonDataModel), if the tag, ‘Persistable’, is 
set to true for a given class, then it is a persistent class. If the tag is not present for 
a given class, then it is a non-persistent class. 
- Examples of persistent classes: ComputerSystem, SoftwareModule, AppServer 
- Examples of non-persistent classes: ModelObject, Database, LogicalElementAttributes

IZ26079 Websphere sensor is not discovering when using an anchor server. The files 
are not copied properly to the anchor server. 
IZ30547 Comparison between DB2Subsystem’s has discrepancies in app descriptor value. 
IZ30697 MQ Server Sensor fails with “CTJTD0441E Unrecognized format of MQ version command.” 
when parsing mq6.x dspmqver command version.
IZ33032 Ecmdb performance: use different db connections for each thread
IZ33201 DB2, JBOSS, and WAS Custom Sever Template extensions not functioning.
To kick off a WebsphereServer CST after the Websphere sensor runs, in the DiscoveryProfiles, 
you must configure the WebsphereCellSensor(from the profile you choose to do a discovery) to 
do a 'MEDIUM' or 'DEEP' discovery (by default, the WebsphereCellSensor is configured to do a 
'SHALLOW' discovery.)
IZ33287 CI’s are merged after IF8 for HP machines running on superdome models.
IZ33320 OutOfMemory errors in gigaspaces component during discovery.
IZ33341 Occasionally tomcat fails to re-deploy cdm.war even if directory is removed. This 
results in an empty deploy-tomcat/cdm directory and caused domain manager to not function.
IZ33449 The header in the java ui for the inventory result panel should be fixed in place.
IZ33499 CCMS sensor fails with the following exception:
COMMAND_NOT_FOUND: Command Name Is Not Defined

This error is thrown when trying to execute the function module:
SXPG_CALL_SYSTEM by passing in the command name: 'env'. This
command does not exist on the customer environment and hence
this throws an exception.
IZ33566 DBinit fails on Oracle if com.collation.db.url has the letters ‘db2’ in it.
IZ33568 Running the MQServerSensor, TADDM remains pending for a long
time on the "nslookup" reaching the agent timeout.
If the timeout is high, the discovery completes successfully.
The problem seems to happen when there are '::ffff:<IP>(<Port>)'
format address.
IZ33633 Transactions and Programs for CICS are not correctly reported in component comparison.
To enable component comparison of CICS Transaction and CICS Programs , add the following line in 
collation.properties:
com.ibm.cdb.topomgr.topobuilder.agents.ObjectDisplayNameAgent.CicsPrograms.CicsTransaction=true

IZ33789 SLD sensor fails with access error for targets outside the discovery scope.
IZ34275 Apache sensor does not discover all the virtual hosts.
IZ34285 SAP sensor needs to use hostname as well as fqdn.
IZ34289 Storage error during the discovery of the anchor machine. The issue is caused by the 
fact the user which is used by TADDM to discover AIX has insufficient privileges to run command 'entstat' 
which is used to retrieve information about MAC of NIC. The user must have file permission with option 
's' to be able to run this command. Until now, the command entstat was hard coded.

To solve this issue, the command 'entstat' has been externalized to collation.properties file:
com.collation.discover.agent.command.hardwareaddress.AIX=entstat           
com.collation.discover.agent.command.hardwareaddress.AIX.1.2.3.4=sudo entstat
By default, 'entstat' is used. You can prefix this command with 'sudo' if the user 
has no privilege to run this command on a target, but he has granted sudo access without 
password to this command.
IZ34516 MQ sensor performance. TADDM tries to set fully qualified domain address 
for each channel, when there are many channels and DNS system does now work, it takes 
a very long time to process all channels. We will optimize TADDM behavior. TADDM will 
still call nslookup but it will call it only once for each IP  address which will 
shorten the time to process all channels.
IZ34535 CICSProgram and CICSTransaction modelobjects do not have a display-name 
definition. As a consequence change history for CICSProgram and CICSTransaction still 
shows guid instead of display names.
IZ35016 Topology builder performance updates, additional filtering is added 
to limit re-processing of unnecessary logical connections.
IZ35454 Use short rpc’s rather then long rpc’s for sync to domain communication to avoid 
susceptibility to network timeouts.
IZ35608    Performance improvements for explicitrel script.
IZ35834 Merge issues on Suse Linux systems running on Z series. The issue is with 
Hypersocket interfaces (these with names hsi*) which have MAC set to 00:00:00:00:00:00. 
We will ignore such MAC addresses during retrieving information about L2 interfaces for 
Linux machines.
IZ35849 This issue concerns the situation when the language locale on the anchor machine 
are set to Turkish. It was caused by the fact that Java supports locale-sensitive case 
conversion and in Turkish alphabet there are two letters for "i". Their uppercasing leads 
to errors which was overcome by introducing uppercasing in English locale. 
IZ36032 Incorrect parsing of Weblogic version if API returns with the list of fixes 
along with version number.
IZ36133 The LinuxComputerSystemSensor uses nslookup to get the FQDN (which is   
used to set the displayName attribute). However, there is a problem with parsing a newline 
at the end of command output, and this newline  character "\n" is set in the database, 
which may cause an incorrect domain name in the GUI.
IZ36156 When TADDM asks SAP about IP address and some configuration is
unavailable in SAP, then SAP returns the following error:
Unexpected exception thrown in agent
org.sblim.wbem.cim.CIMException: CIM_ERR_NOT_FOUND(Remote
exception at the CIMOM:No such instance:
sap_computersystem.creationclassname=
…
IZ36566 Incorrect information contained in the Troubleshooting Guide at page 44 about
Websphere discovery. About "Sensor does not start" scenario, in the Solution it
it writes: For a successful Websphere Application Server discovery on Windows
operating systems, the Websphere Application Server should be started from the
command line rather than as a Windowsservice. Actually, it should be done
exactly the other way round.
IZ37208 The ps command should have a configurable timeout. The following parameter 
is now available to be added to collation.properties:
com.collation.platform.os.command.pstimeout=240000
Property can by configurable for system name and/or IP eg.
com.collation.platform.os.command.pstimeout.Linux.1.2.3.4=240000
If property is not set than default (240000) value is used.
IZ37486 Missing documentation regarding the rediscovery option has been added to the User’s 
Guide, chapter 3 as follows:
The Rediscover option is in the Product Console. When you have a Configuration Item (CI) 
that you have discovered, use this option to rediscover the CI without going through 
the full discovery process. For example, if you finish a full discovery and know that 
something has changed for a particular CI since the last discovery run, use the rediscover 
option.  You can rediscover the CI without going through the full
discovery process again.

Note:  Rediscovery is not a long term method to keep CIs up to date.

The Rediscover option uses information stored by the prior full discovery to seed the
rediscovery.  Aged seeds might provide unpredictable results.  In the following examples, 
the changes after a full discovery might cause a seed to become invalid, and the rediscovery 
might fail or obtain incomplete data:

	The target information the sensor uses has changed (IP address, port binding, and so on).  

	The underlying data model changed.  This is common in releases and maintenance 
	(such as a new release, Fix Pack, iterim fix, and so on).  

	The sensor changes significantly, which impacts the seed information that is stored.

As a best practice, plan a full discovery of all CIs after major maintenance applications 
such as installing an interim fix, Fix Pack, new release, and so on) instead of using the 
Rediscover option.  This ensures that the seeds are maintained
at an adequate level for rediscovery to function properly. 


IZ37725 Creating a business application using the application descriptor file method 
as described in Users guide (Chap. 8, Base application descriptor paragraph) the
App-instance contact field that should contain a contact name or other information
for the application is ignored.  The User’s Guide has been updated to denote that ‘contact’ 
is not imported into TADDM from an application descriptor. 
IZ37779 Incremental sync has a leak that uses about a GB of RAM for every 10
million rows of change history.                                     


Defects and Features included in Interim Fix 7.1.2.0-TIV-ITADDM-IF0002:


2518	MQ server cannot be discovered on Windows platform.
2524	User can start sync on a stopped domain.
4370	Change api explicitrel start/stop events to INFO level messages rather then DEBUG.
4806	When editing a business service, it is not possible to add an IIS Server.
4937	Some of the new sensors on the community site collect and populate attributes in 
TADDM that are not currently displayed in TADDM 7.1.2 IF1. These new attributes are Product Name, 
Product Version, Description, and Vendor Name. 
IZ25917	When comparing Z/OS objects, the resulting pane contains some rows with values containing 
the string [Not Set] in the right column.  
IZ34061	Customer added custom server templates are re-ordered when running template-upgrade.sh.
IZ35838	LAUNCH-IN-CONTEXT is not honoring custom GUI port with Ecmdb. Customer is running an Ecmdb 
in this case, which resolves the GUI web port to individual domains automatically. The request from Ecmdb to 
TADDM  domain was failing because it assumes that domain TADDM GUI port is 9430.
IZ35967	The discovery of Websphere on Windows does not detect Cell/Server/Node Agent when Websphere is 
installed on a directory containing a blank.
IZ36502	In some cases a sensor runs successfully and completes, however its status is still listed 
as "in progress". On the Discovery History panel of the GUI, if you view the "in progress" sensor, and 
expand it to view all the steps of that sensor, the "stored - " step shows
as done (Green) however the overall step shows as "in progress".
IZ36551	When selecting dialog window for editing Business Applications a hang occurs and it is 
impossible to edit any Business Application.
IZ36919	When discovering Oracle on Windows, the ORACLE_HOME variable, gets an extra
backslash "\" character appended to the end of the path. This will show in the
TADDM GUI under the Oracle instance Details windows, General tab, as the "home"
field. This can cause a problem if this same Oracle instance is discovered by an
additional sensor, such as the SAP/CCMS sensor. If the additional sensor does not
append the ending backslash char, the two CIs will not get merged and will
appear on the TADDM GUI as two separate Oracle instances
IZ36923	If you use a customized version of snmp.xml, it will be overwritten with the standardized 
version during a discovery run. 
IZ37736	MSSQL 2005 with only windows Authentication discovery using Cygwin is not discovered.
IZ37781	64 bit Domino 8 discovery of DominoServer sensor running on target machine Windows
2003 is unable to find the path for the notes.ini file. This is because it is
looking for registry key: HKLM/software/lotus/domino but the Domino 8.0.1
machines at this customer site do not have that key their key is:
HKLM/software/wow6432node/lotus/domino
IZ38000	When an HMC is discovered, but its LPARs are not within the scope, if the LPAR name
contains a '.' then they will be categorized in the wrong domain.
IZ38274	IIS: set the proper AppPool for the Home Directory of the particular website.
IZ38841	The timestamp in a discovery should be an 8 byte field (HH:MM:SS) so that entries are sorted 
properly.
IZ38847	Serviceability improvement related to list/search feature. When clicking on list search and 
selecting e.g.: windows computer system type, no debug information was shown in client java console. 
Now additional debug information is displayed when users select list/search and select the type.
IZ38903	Apache sensor does not parse apache config files which are included in httpd.conf file.
Limitations:
Apache sensor  parses files which are "included" in httpd.conf. Configuration defined in those files are captured 
but files itself are not listed on details pane.
IZ39294	Computer Systems Template OS name is incorrect, they all show Linux.
IZ39330	In customer environment home directory for DB2 instance had not been set and appdescriptor 
was not found.
IZ39377	End user can override administrator set com.collation.security.enforceSSL property
IZ39461	Pix sensor fails running against a Pix 535 switch with the following error:
ERROR pix.PixSensor - General Exception
java.lang.UnsupportedOperationException
at java.util.AbstractList.add(AbstractList.java:166)
IZ39719	Windows TADDM: Anchor files not copied if system language is not English.
IZ39729	The JBoss sensor prints the JBoss user password in plain text in the local-anchor log.
IZ39813	CDM Doc: "Manufacturer" is misspelled on the CPU class.
IZ39906	When the file/directory on the TADDM server contains a space in its name,
example: E:\IBM\cmdb\dist/etc\templates\commands\Tivoli Access Manager the scp
copy of this file to the anchor fails. The scp gets an "ambiguous target" message.
IZ40018	Kodo Exception: "Operation attempted on a deleted instance" for
Windows resources.                                             "
IZ40110	When viewing Application Topology, when the "Hide components with no dependencies" option does not work 
properly.  When “Hide components” is selected, no components are displayed.
IZ40192	Delay starting subsequence discovery. Problem was that discovery jvm registered 
listener in topology machine but did not unregister it after discovery.
After discovery, discoverJVM is killed and a new one started yet but topology 
JVM continues to try to send information to killed JVM (listener).
This causes a lot of "java.net.ConnectException: Connection refused"
error message and also overall performance issue on some OS."
IZ40456	In "Component Comparison" when the checksum value is calculated, it does not appear as a link.
IZ40544	During the discovery of Weblogic domains a Storage Error occurred. The issue concerns undefined 
name for JMSStore. The lack of this name results in not fulfilling a naming rule and causes the StorageError.
IZ41212	Weblogic sensor failed during starting local anchor with exception:
Exception in thread "main" java.lang.NoClassDefFoundError:
Weblogic.utils.NestedException
IZ41222	When the url to the admin server in the command line of the process which was responsible for 
Weblogic Managed Server contained not full FQDN of server where Admin Server was, but only host name 
without domain, the discovery for Managed Server in the domain failed. Now, the host name is also 
respected and the discovery is continued.
IZ41914	When linking components to a business service, even if only one component is
selected, all components available get added. This is only for editing existing business services.
IZ41915	After creating a Business Application, the Application Server(s) containing the
Middleware for that application appear twice in the Topology; once with a piece
of middleware connected, and once as a 'floating' instance. 
IZ41935	The computer system inventory BIRT report is missing some computer systems.
IZ42157	The api createVersion call reports that it is deprecated when it is not.
IZ42199	The sensor DB2WindowSensor changes the code page of the database instance to the
code page 1208 and does not set it back. After this APAR, Db2WindowsSensor during discovery 
temporarily changes db2 command line tool code page.
This change is withdrawn after discovery completes.
IZ42234	IIS Sensor:  TADDM cannot find Virtual Directories under standard directories.
IZ42342	Login is slow for users restricted to view an access collection.
IZ42431	A manually added Computer System does show under the Physical Infrastructure
(Unknown Domain -> Manually Added Systems) after a "reload" on the GUI. But it
does not show under List/Search -> Manually-added Computer Systems.
IZ42544	CCMS Sensor does not work on AIX targets after upgrading to 7.1.2. It fails with "Agent 
failed in remote server:JCO.classInitialize(): Could not
load middleware layer" due to specific behavior of Java on AIX (in looking for dependent native 
libraries and different path).
IZ42691	Oracle - > Details > Runtime tab  performance issue. It takes a very long time (20 minutes) 
to open runtime tab if there are many (100+) connections to be displayed. 
IZ42744	After an upgrade from 7.1.1 to 7.1.2, users of the German locale in their browsers are unable to
use any admin features in the Domain Manager. This APAR corrects this problem for all non-English languages.
IZ42809	On Windows, applying 7.1.2 IF fails if the installation
path for TADDM is not C:\IBM\cmdb This is because "C:\IBM\cmdb" is hard coded in
the UpgradeDB subroutine in the InstallIF.vbs script as installDir="c:\ibm\cmdb".
IZ42818	Anchor launches the "Cacls" command with "Administrators" group. The group
"Administrators" does not exist in the French version, the french group is
"Administrateurs". This APAR fixes this problem for all languages.
IZ43212	Cannot discover Weblogic Managed Servers which have been started     
using Windows services. When Weblogic Managed Servers are started from Windows services, we do not 
have an access to command line which would contain information about the address of Admin Server. 
Now, if this information is not available in the command line, it tries to retrieve this info using JMX connection."
IZ43756	SNMP Community String security issue.

      

Defects and Features included in Fix Pack 7.1.2.0-TIV-ITADDM-FP0001:


Features Included in this Fix Pack - see the TADDM Information Center at;
http://publib.boulder.ibm.com/infocenter/tivihelp/v10r1/index.jsp?topic=/com.ibm.taddm.doc_7.1.2/cmdb_welcome.html
for more information

Please note this link will not be updated with new feature information until GA of this Fix Pack.

Sensors
-------
*  Solaris Zones Sensor
*  BladeCenter Sensor

See the TADDM "Sensors Guide and Reference" for more information on these sensors.

Reports
-------
* Concise Computer System Inventory Report
The Concise Computer System Inventory Report allows you to view the IP addresses discovered using 
a Level 1 discovery profile. For each IP address, the report also shows the associated computer 
system name, as well as the operating system or control software name (if this information has 
been discovered).

Although the Concise Computer System Inventory Report is intended for use after a Level 1 
discovery, you can also use it after a Level 3 discovery. However, other reports such as the 
Computer System Inventory Report provide more detailed information after a discovery with credentials.

* Server Affinity Report
The Server Affinity report displays relationships between servers, arranged according 
to the source and target of each relationship. The first table displays all servers 
within the specified scope that are sources of relationships, and the connections from 
those servers to other servers. The second table displays all servers within the specified 
scope that are targets of relationships, and the connections to those servers from other servers. 
This report is not supported on the Enterprise Domain Server.

Discovery Improvements
----------------------
* Credential-less discovery of some applications via nmap
    The credential-less port application discovery will use information 
    obtained from Nmap tool on which ports are active on a computer 
    system to populate the TADDM database with model object that are 
    customarily assigned to those ports. See "Discovering application servers"
    in the "Stack Scan sensor" section of the TADDM Administrator Guide.


Accessibility
-------------
* REST Api
    New API to allow TADDM data and functionality to be used over 
    HTTP with JSON and XML. See "Developing applications using the REST API" in 
    the SDK Developer Guide for more information.

Platform support
----------------
*  DB2 on zOS as a TADDM database
    This allows the TADDM back end database to be deployed in DB2 
    running on Z/OS. This feature is documented in "VIII. ADDITIONAL INFORMATION" 
    of this readme.

Miscellaneous Improvements
--------------------------
*  Discover Websphere on Windows when its not running as a service on Windows 2003.
*  Add copy capability to details panel in the TADDM GUI console.
    Limitations:
        * If the text is on multiple lines, when you paste the text, it is also on multiple lines. 
        * You cannot paste it back into the details pane (no paste function, only copy).
        * The copy function copies the entire cell, one cannot select specific text.


APARs Included in Fix Pack 1:

IZ07353 TADDM does not detect changes to software that is installed on
Unix hosts. 
IZ37736 The SQL sensor did not discover SQL databases when cygwin is used on
the gateway and Windows credentials are used for SQL. For SQL discovery using Windows   
authorization, TADDM requires that the Windows discovery user be the same as the SQL user.                     
If customers want to use Windows auth and cygwin on GW they must add a Windows user and password as a SQL auth.                    
IZ38274 IIS: Set the proper AppPool for the Home Directory of the particular Web site.                                      
IZ39461 The Pix sensor fails running against a Pix 535 switch with the
following error:                                          
ERROR pix.PixSensor - General Exception                   
java.lang.UnsupportedOperationException                   
at java.util.AbstractList.add(AbstractList.java:166)      
IZ39662	The installer should fail and cause a FATAL error if the files required for
installation are not there.
IZ39792	Bulkloads are stuck intermittently when run on an ecmdb with the –g  (graphwhite) option. 
However, loading the DLA on eCMDB still has the following limitations:

1.  May contend with sync scheduling - do not run DLA and sync at the same time.
2.  No change propagation - there is change history just like on a domain with the exception that 
there is no change propagation, for example, changing the duplex setting on an L2interface does not show up as 
a change to the computer system, but it does show up as a change to the L2interface.
3.  No change aggregation - aggregation is when an attribute goes from A->B->A in the same discovery/bulkload. 
We mark the A->B change as not valid, so when a user looks in the UI we report no change at all.
4.  Limited "advanced reconciliation," for example, largely no topobuilder, no attribute prioritization - the DLA takes the 
responsibility for all relationships between the objects it is providing - both implicit and explicit 
(barring the cross-domain ones that ECMDB promises).

IZ41223	DB2 installation through the TADDM installer fails due to a non-utf8 character. 
Choosing to install DB2 through the TADDM installer might fail with an error, indicating
that the port is already in use. Even if it is known and verified that the port is
free. There is a MalformedInputException error in the cdb_install.log.
IZ41245	The TADDM installer should remove obsolete files that can cause errors in the logs. 
The following files are removed in Fix Pack 1 if they exist:
dist/etc/discover-sensors/CustomComputerSystemSensor.xml
dist/etc/discover-sensors/SMISSensor.xml
dist/deploy-tomcat/arts.war
dist/deploy-tomcat/arts   (directory)
IZ42331	Dependency between virtual Apache servers and Websphere is not being shown correctly.
IZ42532	generate-book.sh should be removed. It is obsolete.
IZ42617	The Weblogic sensor fails when starting local anchor with the following error message:
WeblogicSensor2-10.100.1.187-5050 ERROR cdb.AnchorClient - CTJTD2108E The error,
Weblogic.rmi.extensions.DisconnectListener, occurred for remote server,
IZ42715	Insufficient SAP detail was returned during discovery: in MySAP tab among the Deployed 
Components, Patch Level and Highest Support Package columns are not filled in.
IZ43139	712 sdk.zip is missing library files.
IZ43588	For Solaris 5.10 64-bit, stopping 7.1.2 IF1 TADDM server with ./control stop does 
not stop/kill all Java processes.
IZ43670	7.1 to 7.1.2 migration results in inconsistent BIRT views.
IZ43792	There is a conflict between one of the NFSFileSystems and UnixFileSystems mounted for UnixFileSystem. They have the
same naming rule, based on the mount point and parent name, which makes the same
GUID and causes a ClassCastException.
IZ43873	The DSD tab is empty for Sunfire computer systems.
IZ43877	Change history report of ~150 Business Applications might take a long time.
IZ43898	A DB connection process leak; this can cause maximum user processes to be exceeded.
IZ43942	The Websphere sensor fails if command line arguments are not positioned correctly.
IZ44008	The Oracle sensor times out when oracle.extended is set to y ? This property is now ignored.
IZ44010	The CDM Web site indicates that attributes DiskPartition.PartitionType and PartitionSubType 
are enumerations but TADDM code treats them as strings.
IZ44043	Business service topologies only display when there is a computer system in the business service, 
but not when there are only business applications.
IZ44166	In some Windows OS, for example in German Windows, administrators group has a localized name. 
This results in TaddmTool having no rights to access TaddmWmi.dll, and then it cannot add the rights to 
this file because administrators group does not exists in Windows. 
IZ44224	On the Windows platform, Application Descriptors do not work with Apache.
IZ44255	MSSQL discovery issue when an MS SQL BUILTIN\Administrator account is missing.
IZ44385	ApacheSensor creates incorrect BindAddress objects that generate storage errors.
IZ44507	The list of Custom Server Templates (CST) does not include SAP. This means that extensions 
to the SAP Sensor cannot be created.
IZ44518	Cannot configure security on port 9531.
IZ44531	Reusing fully qualified domain names causes operating systems to be shared among old and 
new computer systems. In 712, one can now prevent OS FQDN from being set by using the following collation.properties setting:
com.collation.discover.agent.ComputerSystemAgent.ignoreFQDN             
If property does not exist in collation.properties, the default value is taken.                                                                  
Default value is false. If the customer set it to true, FQDN will not be set for the OS.                                                             
Property can be configurated through the OS or IP:                       
com.collation.discover.agent.ComputerSystemAgent.ignoreFQDN.Linux.1.2.3.4                                                                       
or                                                                      
com.collation.discover.agent.ComputerSystemAgent.ignoreFQDN.Linux       
or                                                                      
com.collation.discover.agent.ComputerSystemAgent.ignoreFQDN.1.2.3.4     
Where Linux is the OS name and 1.2.3.4 is the IP.                                                                                               
Example for ignoring FQDN on VMWare operating systems:
com.collation.discover.agent.ComputerSystemAgent.ignoreFQDN.Vmnix=true  
Note that the os.fqdn is not unset if it is already there. This change only applies to NEW operating systems.
To find operating systems that share computer systems, use this query;

./dbquery.sh "select GUID_X, PK__OSRUNNING_X, LASTMODIFIEDTIME_X,      
CONTEXTIP_X, SIGNATURE_X  from COMPSYS where PK__OSRUNNING_X IN (SELECT
comp.PK__OSRUNNING_X  from COMPSYS comp, OPSYS op where                
comp.PK__OSRUNNING_X = op.GUID_X || '-0' and                           
op.PK__PARENTOPERATINGSYSTEM_X != comp.GUID_X || '-0') order by        
PK__OSRUNNING_X, LASTMODIFIEDTIME_X"                                   

The api delete command can be used to remove the computer system which is no longer valid.  
                                                                        
IZ44593	Components such as routers, switches and firewalls are being displayed under 
Discovered Components > List Search > Manually Added Computer 
IZ44626	WebsphereVersionSensor ending with the error WVER0004E: Error writing version report to 
com.ibm.Websphere.product.WASProductNLS:label.standard.output:
java.lang.NullPointerException 

There was a problem with executing the Websphere versionInfo.bat command on the target system. 
It sometimes failed to return the product version. It caused the Websphere version sensor to not set the proper version.
IZ44935	Websphere Discovery ending with error message "State change event is Stored - Cells: 0 in the database of sequence" 
IZ45169	Websphere discovery failing if Websphere is installed on a systen with many network interfaces.
IZ45256	CCMSServerSensor failing with error:
ERROR
cdb.AnchorClient - CTJTD2108E The error, CTJTD0030E During the agent discovery,
the following sensor error occurred: null ., occurred for the following remote
server: com.collation.discover.agent.AgentException. . 2009-03-04 09:07:46,220
Thread: 0,8495 ERROR cdb.CCMSServerDelegate - CTJTD0132E The SAP sensor cannot get the SAP systems. java.lang.NullPointerException
IZ45360	The ICON that is selected in the custom server definition is not the ICON that is displayed 
in the topology graph or the discovered components tree.

Defects included in Fix Pack 1:

6201	TADDM_INVENTORY birt report - MAC_ADDRESS column empty.
4802	When running TADDM_INVENTORY report, the same entries are listed many times, depending on how many 
file systems are mounted.
6315	TADDM_OS_INVENTORY shows duplicates.
6171	I5 specific attributes are missing from details OS tab of details display.
5370	Using SSL as API connection option results in an exception due to the missing resource file, 
com.collation.proxy.ssl.messages.ProxySslMessages.properties, in the API client jar.
6800	Locking condition on Change_seq_id table on DB2 might cause Sync failures.
5831	CST Scripting to Windows returns an exit status of 2 and returns no data.
3698	Business Service shows duplicate host dependencies.
6764	Ecmdb cannot synchronize with a domain - "0 work items queued, 0 in progress" after getChangedTables
is completed.
5486	Custom Servers and Computer Systems does not refresh. When you add a new Custom Server, all Computer 
Systems disappear. The opposite occurs when you add a new Computer System; all Custom Servers disappear.
5493	Generic Server Sensor fails on some Windows 2003 Servers.
4808	Java server in business service is included in the wrong category



Defects and Features included in Fix Pack 7.1.2.0-TIV-ITADDM-FP0002:

IZ38482 Rediscovery of Weblogic Domain failed when normal discovery of Weblogic runs in parallel with anchor sensor.
IZ42833 When running change history function to generate a change history report, occasionally
the file size value is reported as -1 and the checksum is negative.
IZ44795 Synchronization fails if the ecmdb db user does not have access rights to drop/create tables and indices.
Normally a sync requires this privilege to drop and recreate the change_sync table and index on it. To work around this
requirement users may create a stored procedure on the database to be called when the drop/create of the change_sync table fails.
The stored procedures must drop, create table and index on change_sync table. If the table is not dropped/create outright 
by the stored procedure, users can expect the sync time to be increase by the execution time of the stored procedure 
on a fully populated change_sync table. This APAR adds the collation.properties properties:
com.collation.synchroizer.ChangeSyncDropTableStoredProc, com.collation.synchroizer.ChangeSyncCreateTableStoredProc, 
com.collation.synchroizer.ChangeSyncCreateIndexStoredProc which; to be used, should be set equal to the name of the stored procedure.
Property com.collation.synchroizer.ChangeSyncDropTableStoredProc define name of stored procedure which drop of change_sync table. 
Default SQL definition which drop change_sync table is: "DROP TABLE change_sync"
Property com.collation.synchroizer.ChangeSyncCreateTableStoredProc define name of stored procedure which create of change_sync table. 
Default SQL definition which create change_sync table is: "CREATE TABLE  change_sync (object_id VARCHAR(192))"
Property com.collation.synchroizer.ChangeSyncCreateIndexStoredProc define name of stored procedure which create index change_sync table. 
Default SQL definition which create index on change_sync table is: "CREATE UNIQUE INDEX change_sync_idx  ON change_sync  (object_id)"
Properties should be set on TADDM domain not on ECMDB.
IZ44818 On the Business Service and Business applications physical topology graph there were no routers attached 
to computer system that are a part of this BA/BS.
IZ45407 Adding a new version of an existing BIRT report fails without any error message.
IZ45678 An ArrayIndexOutOfBoundsException during a discovery on a HMC target when there is no 
LPARs within a specified System p.
IZ45944 SLS discovery ends with a storage error when naming rules are not defined for components 
(SAP system, ABAP Application Server, SAP cluster).
IZ45983 Cannot login to the Domain Manager when property com.collation.security.enforceSSL is set to true.
IZ46881 tomcat.log security exposure.
IZ47266 Incremental synchronization hangs and creates lock on CMDB_GUID_ALIAS table.
IZ47621 After scheduled discovery the scope assigned to this schedule disappears.
IZ47636 Storage error during storing information about Weblogic Cluster - a string which has been set as 
an address for a cluster is an invalid hostname for a host.
IZ47640 TADDM cannot determinate a version of Websphere when the locale on the machine with Websphere is not English.
IZ47729 Selecting "BIRT reports" in domain managers main menu does not work on locale other than English.
IZ47742 ActiveDirectorySensor fails when reading Windows registry key "HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Parameters"
if key starts in lower case letter like: "HKLM\SYSTEM\CurrentControlSet\Services\NTDS\parameters".
IZ47816 When the Domain Manager user clicks on the "tier off" button on components details panel, 
the links to other components from tiered window are not working. 
IZ48011 If the Vmware computer contains more than one MAC Address, it may cause duplicates in TADDM because of different naming rule. 
IZ48071 String "[null]" appears at the end of the items running a component comparison.
IZ48095 Domino sensor issues:

1. DominoServerInital sensor failed to parse notes.ini file

The issue was related to the following exception:
ERROR lotus.DominoServerInitialAgent - java.lang.IllegalArgumentException: Malformed \uxxxx encoding.

2. Domino sensor with ssl does not work via anchor
Certificate TrustedCerts.class is not copied to anchor.

The workaround for this issue is to copy certificate to anchor manually.

3. Domino sensor fails when port is specified in DIIOP server settings
(LotusDominoInitialSensor.xml file)
The following exception occurs:
NotesException: Database open failed ()
NotesException: Database open failed ()
at lotus.domino.NotesExceptionHelper.read(Unknown Source)

IZ48287 IP address for ABAP Application Server from CCMS discovery is incorrect when the machine on which the server
is installed has many network interfaces.
IZ48305 I5OSComputerSystemSensor fails with error CTJTD3521E (storage errors). Additionally, NullPointerException
and MissingKeyException errors can be seen in the logs.
IZ48421 Anchor server fails on Windows operating system when SSH port is not 22.
IZ48498 EntityMIBSensor fails with error CTJTD3521E (Storage errors) when discovering
Cisco Catalyst 4000 devices.
IZ49233 Topology builder agent ComputerSystemConsolidationAgent removes valid computer systems from database with the same name.
IZ49372 For a z/OS DLA book load, the relationship between CICSRegion and runs on ZOS is
missing in the relation table or not being built correctly.
IZ49383 "Domain Computer system" field does not contain a link to a machine hosted on that domain for Sun Fire.
IZ49395 Jdbc connection pool leak causing discovery and bulk load performance issues after running bulk loader
more than 15 times.
IZ49410 ORACLE_HOME variable was not found properly on Oracle version 9.X, because of DMBS_SYSTEM table not provided in Oracle v. 9.x.
IZ49436 MSSQL 2005 discovery fails with error: CTJTD3521E (storage error). SQL Server Sensor did not fill 
naming rule for the SQLServerModule object and it cause storage error.
IZ49581 Topology builder agent DerivedSwitchToDeviceDependencyAgent performance fix.
IZ49600 BIG-IP port sensor cannot discover ports if BIG-IP version is 9.x.
IZ49614 On Physical Topology for router with 'bridge' function TADDM did not shown dependency to other computer system. 
IZ49641 Converting XML with an array of objects to java Model Objects using XMLUtils.toModel(true) may not convert 
all objects at the appropriate depth.
IZ49701 TADDM cannot gather information about ports for Cisco Routers, although this information is available via SNMP.
IZ50242 Anchor sensor fails during an unzip of one jython file.
IZ50262 GenericServerSensor fails with error CTJTD3521E (Storage errors) when discovering
I5/OS targets. Additionally, NullPointerException and MissingKeyException errors can be seen in the logs.
IZ50277 File system data missing on TADDM console for AIX 6.1. 
IZ50299 When creating a custom WindowsComputerSystemTemplate using CMD:NOP and CMD:CONFCONTENT the config file was 
not collected during discovery.
IZ50317 Correct the javadoc to remove the wording where classes say they are obsolete or
deprecated.
IZ50343 TBSM bulk fails in TADDM when api returns a multiple of 50 in the batch.
IZ50484 Weblogic sensor is failing when the password contains parentheses. This is due to the fact that special
characters in username/password are not protected for posix command line execution.
IZ50705 Operating system from VMware ESX is set to Linux instead of Vmnix.
IZ50757 TADDM tries to retrieve information about components installed on a Websphere server which 
have been marked to be skipped during a deep discovery.
IZ50829 WeblogicSensor security exposure.

3342 Running the ECMDB Change History report only shows Creates and Deletes. 
Updates for components do not appear.
3657 After the update using installIF.sh all file privileges has been changed to 755. 
Contents of dist/lib directory have access 664 and after update 755.
6960 After discovery of PIX in details on Ports tab Full speed: contain 0 MBits/sec 
instead of 100 MBits/sec (in database value is 100000 = 100 kBits).


Defects and Features included in Fix Pack 7.1.2.0-TIV-ITADDM-FP0003:


IZ49943	Sync DB error handling improvements. Handling has been added for 
the SQLExceptions generated when a Non Recoverable Chain Breaking exception 
is generated in DB2. Similar Oracle exception will produce a similar result 
but the log message will be less specific.
IZ50655	After adding Extended Attributes for some servers, when you try to 
"Edit" the server and add a value into the Extended Attributes, the value is 
not saved. The problem was caused by a null Pointer exception occurring with 
the metaCache_ object. 
IZ50965	TaddmTool returns the following exception when executing GetFreeDiskSpace 
command on removable drive:                                            

!?! WmiQueryOne: SELECT FreeSpace FROM Win32_LogicalDisk WHERE DriveType 
=3 AND Caption='C:' returned 0 columns                                   
!!! TaddmTool Error: Uncaught exception invoking GetFreeDiskSpace: System.NullReferenceException: Object reference not set to an instance of an  object.                                                                  !!! TaddmTool Error:    at Taddm.Context.GetValue(ManagementObject obj,  String field)                                                            !!! TaddmTool Error:    at Taddm.TaddmMisc.GetFreeDiskSpace(String dir)  
!!! TaddmTool Error:    at Taddm.TaddmMisc.TADDM_GetFreeDiskSpace(String [] args)                                                                                                                                                                                                                                         
TaddmTool can check free disk space only for local disk. When checking  disk space of 
removable disk, it fails because it got null pointer exception.  TaddmTool will be enabled 
to check disk space also of removable drive.
IZ50999	Information about model, os, os version is not discovered for Cisco 6500 with supervisor.
IZ51080	SnmpMib2Agent fails when IP address does not have a populated L2 interface.
IZ51112	After changing this property in collation.properties:                         

com.collation.platform.os.disableRemoteInterfaceFQDNLookups=false      

Discovery of computer system causes a StackOverFlowException and discovery fails. In ComputerSystemSensor during creation of new Connection the TADDM sensor gets an unfinished 
recurrence and it causes this problem. This problem may occur in all computer system sensors.

IZ51222	Websphere discovery stops with an error that it cannot find the IP adddress 
for the cell:
cdb.WebsphereCellSensorDelegate - WebsphereAgentDelegate.E.0  discover() 
failed With AgentException:com.collation.discover.agent.AgentException: 
CTJTD0692E The distributed cell deployment manager bind address is not found for the following cell: 
<cell_name>.
Issue happens when the first node read from Websphere configuration has no servers.


IZ51303	Cannot create Business Application or Business Service  via the User Interface which 
does not contain any selected component. Informative message pops and user cannot save the BS/BA.

However, it is possible to create BS/BA without components from the TADDM API hence the UI will 
be changed to allow this same behavior.
IZ51502	When the User removes dependency in CI dependencies dialog, nothing occurs; 
the dependency is not removed.                                    

A ClassCastException occurs in Java Console log.  This will be corrected when the dependency 
includes Business Application and/or Business Service. When the user clicks "remove", the 
object is deleted from BA/BS. In the other cases(not a BA or BS), this button is inactive.
IZ51571	If a user manually creates cluster, an error message "No servers are selected. 
Select the server type to cluster" appears after clicking the Finish button, however, the 
cluster is created. 
IZ51574	Incorrect error message "Unknown WL version" when there is no valid credentials 
for Weblogic. 
IZ51648	CitrixServerAgent is not executing "setHost" on the CitrixServer object which is 
causing that relationship in Maximo to be missing. Also if you delete the Windows 
Computer System it will not delete the CitrixServer that is running on this system.
IZ51777	During the discovery for EntityMIB sensor the physical frame is self referenced, 
and a storage error occurs. The EntityMib sensor creates the physical frame, as the part of 
physical package, and this frame has the same serial number as the physical package. Both 
frame and package have the same naming rule and they are merging, so the frame is self 
referenced. This causes storage error and infinite loop in TADDM.
IZ52340	Component comparison of the one WindowsComputerSystem from two different versions 
does not return any difference although there is directory content collected and this 
content contains some changes. No change is reported in component comparison because 
collected config file (directory in this case) has no checksum (checksum equals 0).
IZ52362	This problem occurs when several TADDM Java API calls are run in parallel and 
TADDM use LDAP authentication mode. In the error.log this message may be found;                                    

ERROR server.ApiServerWorker - [ApiServer.E.15] Unable to login 
com.collation.proxy.api.client.ApiException: CTJOX0130E The password specified is not correct. at com.collation.proxy.api.server.ApiLogin.init(ApiLogin.java:187)          
at com.collation.proxy.api.server.ApiLogin.<init>(ApiLogin.java:148)        
at com.collation.proxy.api.server.ApiServerWorker.login(ApiServerWorker.
IZ52602	The tab PhysicalPackage is not visible for UnitaryComputerSystem.
IZ52650	No link to Domain Computer System from SunFire DSD when a property 
'com.collation.discover.agent.usePMACNamingRule' is set to false. The link between Domain 
Computer System and SunFire DSD is created by Topology Builder agent. The relation between 
them should be visible through api.sh and also there is a hyperlink in Product Console 
which drives from SunFire DSD to appropriate domain computer system.
IZ52689	Citrix Farm is duplicated when more then one sensor runs at the same time. If one 
runs one Citrix Sensor everything is fine but if you run two and they start to parse outputs   
and create objects in the same millisecond then it can lead to duplicates. The Citrix Sensor 
method is now synchronized. 
IZ52897	The Db2WindowsSensor does not discover 32 bit DB2 on 64 bit Windows platform.  
The Db2WindowsSensor queries the windows registry "HKLM\SOFTWARE\IBM\DB2".
For 32 bit DB2. On 64 bit windows should query "HKLM\SOFTWARE\WOW6432NODE\IBM\DB2" where windows keeps  the key for 32 bit DB2. This key has now been added to the sensor.
IZ52903	Launch in context is not handling HTTPS secure calls(SSL enabled).
IZ52964	During discovery of Lotus Domino, TaddmTool times out while executing GetFileInfo 
method. TaddmTool locks *.nsf files and Lotus Domino users cannot access them. While executing 
GetFileInfo method (collecting information about files/folders), TaddmTool calculates the checksum 
of each file. If there are lots of files and they are huge, then checksum calculation takes lots of 
time. Additionally TaddmTool does not release file handles immediately. 

Checksum calculation of files bigger than 300000 bytes is changed. Customer should expect that change history and component comparison will show a change for those files after this MDV is applied.

IZ52981	api.findChanges may produce either of the two exceptions below when run with multiple 
threads (with different sessions) simultaneously, and the query returns 0 results.

ApiServer [RMI TCP Connection(203)-10.123.123.101]  DEBUG topomgr.TopologyManagerFactory - 
Reconnecting to TopologyManager - Proxy[TopologyMan
agerServiceInterface,RemoteObjectInvocationHandler[UnicastRef2 
[liveRef: [endpoint:[192.175.148.76:9550,com.collation.platform.jini.CustomSocketFactory@2a](remote)
,
objID:[-252ceeaa:12169c71da1:-7fff, -6984684574986887225]]]]]
kodo.util.DataStoreException: Exhausted Resultset
at kodo.util.DataStoreException.newSerializableInstance(DataStoreException.java:74)
at kodo.util.DataStoreException.writeReplace(DataStoreException.java:61)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
 ..
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  


ApiServer [RMI TCP Connection(212)-10.123.123.101]  DEBUG topomgr.TopologyManagerFactory - 
Reconnecting to TopologyManager - Proxy[TopologyManagerServiceInterface,RemoteObjectInvocationHandler[UnicastRef2 
[liveRef: [endpoint:[192.175.148.76:9550,com.collation.platform.jini.CustomSocketFactory@2a](remote),
objID:[-252ceeaa:12169c71da1:-7fff, -6984684574986887225]]]]]
java.rmi.ServerException: 
RemoteException occurred in server thread; nested exception is: 
        java.rmi.RemoteException
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:325)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native Method)
..
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:707)
at java.lang.Thread.run(Thread.java:595)

In both cases in TopologyManager this error also appears:

TopologyManager [RMI TCP Connection(7754)-9.123.123.207]  ERROR engine.TopologyStorageEngine - 
[TopologyStorageEngine.E.26] TopologyStorageEngine.find() failed
kodo.util.DataStoreException: 
[ibm][db2][jcc][10120][10943] Invalid operation: statement is closed.
at kodo.jdbc.sql.DBDictionary.newDataStoreException(DBDictionary.java:3400)
at kodo.jdbc.sql.SQLExceptions.getDataStore(SQLExceptions.java:77)
at kodo.jdbc.sql.SQLExceptions.getDataStore(SQLExceptions.java:63)
..
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:912)
at java.lang.Thread.run(Thread.java:810)

Problem was with synchronization in TopologyStorageEngine. KodoQuery requires a unique id for each query. But in this case taddm set the same id for both query and it cause the above errors.
IZ53393	In some cases the session sensor fails to create the session to windows target. The 
following error can be found in session sensor log: 
"The following command is not successful:  cmd.exe /C cmd.exe /c null/TaddmTool.exe"

This is caused by the gateway home directory not being initialized properly.
IZ53466	Db2Sensor on AIX platform does not start when the db2 agent process name is db2agntp. 
"db2agntp" has been added to the template which starts the DB2 sensor. 
IZ53510	CIs with Transactional Dependencies on/to/from a business application do not have the 
business application listed in their dependency tab unless the CI is defined as part of the business 
application.  CIs with "service" dependencies do (even if the CI is not part of the bizapp).
IZ53512	Method addRelations from TADDM java api may result in NullPointerException if the the array which is passed as a first argument contains at least one null.
IZ53561	Websphere sensor does not start on different windows platforms other than windows 2000 after installing FP2 due to a wrong template which start Websphere sensor on windows platform.                                                                                                                     
Template which start Websphere sensor in FP1 was incorrectly changed to:               

Operating system name contain "Windows" and Windows Service Name contain
 "IBMWAS" and Operating system name contain "2000".                     
                                                                        
This APAR removes the last limitation "Operating system name contain 2000".
IZ53591	com.collation.Tomcat.jvmargs does not handle parameters containing an '=' sign.  For example: 
com.collation.Tomcat.jvmargs=-Xmx1024M -XX:MaxPermSize=256M which is required for many BIRT reports to not produce out of memory on Solaris.  As a workaround, customer can code the setting in the 
control script, however, with this FixPack, the property now works directly in collation.properties. 
Without this fix, coding this property with any parameter containing an '=' will cause TADDM startup to fail.
IZ53630	Storage error during discovering SAP system which has undefined property 'SystemHome'.
IZ53637	Storage error during discovering Tru64 due to not finding MAC address for the machine.
IZ53797	Discovery of Solaris machines is failing. The arp command fails when run as part of 
the SessionSensor, thus causing the GenericComputerSystem sensor not to start, which in turn causes 
the SunSparc sensor not to start. The end result is the Solaris targets are displayed only as "Other IP" 
devices. In the SessionSensor.log you will see the error: 

DiscoverManager[DiscoverWorker-9] SessionSensor-1.2.3.4 DEBUG session.SshSessionClient - 
Command [LANG=C /usr/sbin/arp 1.2.3.4] failed in session ssh2:/HostAuthcom.collation.platform.security.auth.HostAuth
[taddm] XXXXX]/null@1.2.3.4:2153: exit status 1 (no stdout) 
DiscoverManager [DiscoverWorker-9] SessionSensor-1.2.3.4 DEBUG session.SshSessionClient - Spent 0.19 seconds in executeCommand 
DiscoverManager [DiscoverWorker-9] SessionSensor-1.2.3.4 DEBUG session.SshRetry - SSH exec for taddm@1.2.3.4: attempt 1/5:[uid.6exxc9wf] will not retry SessionCommandFailedException CTJTP1135E The following text is the exit status: 1
DiscoverManager [DiscoverWorker-9] SessionSensor-1.2.3.4 WARN os.SolarisOs - [PLATFORM.OS.W.73] arp failed for 1.2.3.4 
 
A property has been added to externalize arp command on solaris to allow for sudo;

com.collation.discover.agent.command.arp.SunOs
default value is:
LANG=C /usr/sbin/arp

Customer can change this by adding sudo to arp 
eg:
com.collation.discover.agent.command.arp.SunOs=sudo LANG=C /usr/sbin/arp                                                                                                                                                                      
The property can also be customize by ip;

com.collation.discover.agent.command.arp.SunOs.1.2.3.4=sudo LANG=C /usr/sbin/arp"
IZ53939	Storage Error discovering Weblogic Cluster which presents an IP containing leading zeroes (for example, 1.2.08.1) to TADDM. In general, Java removes these leading zeros when we create an IP address from string.  This results in a MissingKeyException in the DiscoverObserver log.
IZ53947	During fetching of application descriptors the CustomAppServerAgent is trying to use 
the ip address the custom application is bound  to instead of the one used by sensor during 
basic discovery.
IZ54062	SqlServerSensor cannot discover database bound with particular SQL Server. SqlServerSensor finishes with warning and database tab in detail panel is empty for SqlServer. Additionally error message appear in SqlServerSensor log:
DiscoverManager [DiscoverWorker-1] SqlServerSensor-9.1.2.3-1433-MSSQLSERVER DEBUG session.SshSessionClient - 
Executed command [cmd.exe /c C:/WINDOWS/temp/taddm.2lgt1m/TaddmTool.exe -DTADDM_ID="2lgt1m" -DTADDM_USERNAME="domain\administrator" -DTADDM_TIMEOUT="120" SqlDump @9.1.2.3 "-Udomain\administrator"
-P626e432324226f506d7d -S9.1.2.3 -IMSSQLSERVER sysdatabases] on session ssh2:/WindowsHostAuthcom.collation.platform.security.auth.WindowsHostAuth[domain\administrator][XXXXX]/null@9.1.2.3

DiscoverManager [DiscoverWorker-1] SqlServerSensor-9.1.2.3-1433-MSSQLSERVER INFO session.Ssh2SessionClient - No encoding over ride found.

DiscoverManager [DiscoverWorker-1] SqlServerSensor-9.1.2.3-1433-MSSQLSERVER DEBUG session.SshSessionClient - Command stdout:
..
!?! Integrated Security (current user) failed: System.Data.SqlClient.SqlException: 
Login failed for user '<user>'. The user is not associated with a trusted SQL Server connection.


As well as this warning;

Unable to fetch and parse databases com.collation.discover.agent.AgentException: CTJTD0611E Authentication to the SQL server failed.
at com.collation.discover.agent.app.db.mssql.SqlServerAgent.getTable(SqlServerAgent.java:126)

Problem occurs on sql servers discovered by TADDM gateway with CYGWIN and OpenSSH.

Connection string 
used by SqlServer sensor needs to contain an option which turns off pooling of connection to SQL server;

"Pooling=false;". Pooling of connection causes the SQLSensor cannot connect SQL server 
and retrieve database configuration. 
IZ54281	Jboss discovery returns "CTJTD3521E ERROR - A STORAGE ERROR OCCURRED". Due to changes introduced with IPv6 in 7.1.2 (IpAddress dotNotation changed to stringNotation) the JBoss sensor is failing because stringNotation we set contains IP and Port. There should be only IP. This problem occurred only when JBoss cluster was configured.

IZ54290	Customer is creating Business Applications with application descriptors and JBoss is 
one of the components. The Jboss sensor always tries to take it from "/" directory even if 
HomeDir variable in Path is set.
IZ54291	Customer is creating Business Applications with application descriptors and Apache is 
one of the components. ServerRoot was not set in apache config file and it was not possible to 
set environment variable for the process (it would require restarting apache which was not possible). 
When we run httpd -V we get default ServerRoot (from compilation option) and that is what we should 
take when do not have anything else.
IZ54446	MQ sensor failed on windows machine for MQ 5.3 version when TADDM gateway is the 
TADDM server machine.                                           

In MQ sensor log, one can find error:                                   

com.collation.discover.agent.AgentException: CTJTD0441E The MQ version command is not recognized.        
at com.collation.discover.agent.app.mq.parsers.MQGeneralParser.parseVersion(MQGeneralParser.java:49)                                           
at com.collation.discover.agent.app.mq.AbstractMQHelper.parseVersionInfo(AbstractMQHelper.java:283)at com.collation.discover.agent.app.mq.AbstractMQHelper.discover(AbstractMQHelper.java:108)at com.collation.discover.agent.app.mq.MQServerAgent.discover(MQServerAgent.java:85)at com.collation.discover.engine.AgentRunner.run(AgentRunner.java:155) 
at com.collation.discover.engine.DiscoverEngine.processWorkItem(DiscoverEngine.java:1313) at com.collation.discover.engine.DiscoverEngine$DiscoverWorker.run(DiscoverEngine.java:864)
The MQ sensor starts only version command for MQ in version 6.x (dspmqver).  The Sensor did not try to run command version for 5.x (mqver) which caused failure of the sensor."
IZ54519	On a machine with French locale the Windows GenericServerSensor does not start sensors correctly. There are no errors but application sensors which are started by GenericServerSensor may fail or return wrong date.
GenericServer sensor executes netstat command which on French Windows returns output like: 
 
TCP 0.0.0.0:135 0.0.0.0:0 En dz©coute 676 
TCP 0.0.0.0:445 0.0.0.0:0 En dz©coute 4
...... 

When TADDM parses output it expects the format of line will contain 5 words but in French we receive 
6 which breaks the parser.
11833	Fix Pack 2 migration cause cd ./dist/sdk/bin to 'de': Permission denied error due to incorrect permissions being set.
11421	zLinux changes for setting the VMID (to prevent merging several ZVMGuest into one on a single LPAR) and several zLinux command changes as noted below(MR0401094810).

The zOS DLA does not provide any details on the Linux guest that is running. The Linux sensor needs to be enhanced to use the right set of commands for the s390 architecture. When using the current TADDM sensors on a zLinux s390 system, several commands are being called from incorrect places for the operating system and/or architecture and others reference the incorrect default shell.  Additionally (and possibly because of these command errors), some commands are not returning all required values for the sensor. Finally, some commands are not executing efficiently.  


The following changes were made:

- the "dmidecode" was replaced by looking for data in /proc/sysinfo
- removed gathering the data from /proc/cpuinfo (CPU clock and type) 
- removed gathering the data from cat /proc/device-tree/ibm,partition-no file
- to prevent merging several ZVMGuests into one, the VMID was enhanced by concatenating the existing VMID with ZVM name



Defects and Features included new to Fix Pack 7.1.2.0-TIV-ITADDM-FP0004:


IZ51042 The Topology build may take a long time after running explicitrel 0 due to excessive display name generation. Since TBSM does not use the displayname,
	  TADDM will insert default display names in the relation table to avoid the Topology build having to create them.
IZ52406 The ZonesGenericSensor is not starting when Local zone IP type is set to exclusive. Since Solaris version 10 8/07 it is possible to set "exclusive" IP
	  for a zone. The problem is that in zone info output we do not get the IP Address. In order to start ZonesGenericSensor we must have the IP of the zone.
	  In exclusive mode it is possible to view the zone IP address by running a command (from global zone): zlogin  ifconfig -a.
IZ52598 When running explicitrel 1, some relation GUIDs are not added to the persobj table and/or cmdb_guid_alias table. This causes deletes of CIs with these
	  relationships to fail with an ObjectNotExistsException in the TopologyManager log. The exception will include a pointer to
	  "com.ibm.cdb.topomgr.engine.TopologyManagerEngine.removeRelationshipsWithComponent" indicating the failure is on a relationship guid.
IZ53806 IPSO Sensor failed when the Signature was not set. The hardware address was not set in ip iterfaces properly.
IZ53830 The Virtual Windows ComputerSystem label is different from either the FQDN or the DisplayName of the system. This is caused by an erroneous call in the
	  VMware sensor code which has logic to set this if the FQDN is null (but also if it is not null).
IZ53878 The Java UI login may take in excess of 5 minutes. The problem appears when the TADDM database has many custom server types discovered.
IZ53906 After installing TADDM FP01 some of the BIRT reports that previously existed are no longer shown in the TADDM  GUI. The reports have not been deleted but
	  have been incorrectly removed from the default view during the installation of FP01.
IZ54019 Error during blade center discoveries, when logging debug infromation, there is a missing check if logged information exists, which causes an
	  ArrayOutOfBoundsException "java.lang.ArrayIndexOutOfBoundsException:
	  Array index out of range: 1 at com.ibm.cdb.discover.sensor.sys.bladecentersnmp.BladeCenterSnmpHelperAbstract.getRemoteAlertsCrit(BladeCenterSnmpHelperAbstract.java:1268)"
IZ54078 InstanceNotFoundException occured when discovering WebLogic on an AIX 5.2 Operating System. This was due to an AIX problem with displaying processes with
	  long arguments (greater than 2048 characters). The Weblogic Managed server 7.x/8.x was not recognized due to the short ps output on AIX 5.2. A new command
	  is run against Weblogic that returns the correct information about the Server status.
IZ54275 "Error determining whether sys is Windows" occurs during blade center discovery, this happens while determining whether the system is Windows in the SnmpMib2
	  sensor.
IZ54424 TADDM Product Console -> Analytics > Component Comparison -> select windows computer system , select version that is different than current version. It
	  takes hours for the list of 500+ Windows Computer Systems to be built and shown in the GUI. This problem is NOT restricted only to Windows Computer systems.
	  When selecting a version different than the current, TADDM pulls all Computer Systems of selected type with all their attributes. Then TADDM converts all of
	  them and their attributes into object which can be handled by GUI. This conversion consumes lots of time.
IZ54440 The net interfaces on A Windows machine configured with multiple IP addresses are not discovered correctly, TADDM shows only one IP. No errors are displayed
	  in the discovery. During discovery of Windows machine TADDM takes only the first IP for IP interface.
IZ54450 Weblogic Sensor (version 9/10) fails when there is no access to the default IIOP password. The Weblogic sensor currently retrieves default DefaultTGIOPPassword
	  and DefaultIIOPPassword . These attributes require administrator group privileges. Changes have been made which allow a discovery of a Weblogic target with user
	  that has only monitor privileges.
IZ54457 Information about the product version of WebSphere is truncated to the first two values (information about  fixpack level is not displayed). This issue concerns
	  only WebSphere servers which are installed in non-English languages. In the Product Console in the field Product Version for WebSphere the values which are
	  displayed are: 6.1 6.0 5.x TADDM does not show a full version with fixpack level (for example it shows 6.1 instead of 6.1.0.23).
IZ54557 On Solaris, OS storage devices are incorrectly classified as an IDE instance of SCSI. The Incorrectly classified device has in its device name ide value. This
	  causes TADDM to create an IDE device instance of SCSI. EG; device c0tod0 is actually SCSI. the ide refers to part of the device hierarchy:
	  c0t0d0s0 ../../devices/pci@1e,600000/ide@d/sd@0,0:a The sd in the last forward-slash delimited field indicates it is a "scsi disk", and is the driver used by
	  the OS for it. The TADDM parser checks if a device is SCSI if in the device hierarchy it contains "/scsi", "/lpfc" or "/fibre-channel". Another condition
	  was added to cover this scenario.
IZ54817 Websphere Discovery fails to copy jars needed for a discovery to an anchor. The discovery of Websphere ends with an exception: DiscoverManager[DiscoverWorker-7]
	  WebSphereNodeSensor-172.xx.xxx.xxx-xxx-Cell[ctgCell01]-Node[ctgCellManager01] ERROR cdb.AnchorClient - CTJTD2097E An error occurred. Unable to find the jar file,
	  /opt/IBM/CMDB/dist/lib/websphere/6.1/plugins/com.ibm.ws.runtime_6.1.0.jar java.io.FileNotFoundException: /opt/IBM/CMDB/dist/lib/websphere/6.1/plugins/com.ibm.ws.runtime_6.1.0.jar
	  (A file or directory in the path name does not exist.) at java.io.FileInputStream.(FileInputStream.java:135) at java.io.FileInputStream.(FileInputStream.java:95)
	  at com.collation.discover.anchor.Anch
IZ54853 When the "Options" dialog for "Application Infrastructure" (or other) graph is viewed, and the user unchecks the	"Hide components with no dependencies", and
	 "Service links" is "Hide", the filtering for components will not work.	This occurs due to a problem with the filtering alghoritm.
IZ55347 The Loadidml.sh command fails to store the object with a missingkey exception although the xml book defines the naming rule for virtual AixComputer system.
	  The book is as follows:- <idml:operationSet opid="0">- <idml:create timestamp="2009-06-01T00:12:20Z">- <cdm:CDM-ER-Specification>
	  - <cdm:sys.aix.AixUnitaryComputerSystem id="20"><cdm:Fqdn>V1H.test.ibm.com</cdm:Fqdn><cdm:Signature>V1H.test.ibm.com</cdm:Signature>
	  <cdm:Type>ComputerSystem</cdm:Type>	</cdm:sys.aix.AixUnitaryComputerSystem>- <cdm:sys.aix.AixUnitaryComputerSystem id="30"> <cdm:Fqdn>V1V.test.ibm.com
	  </cdm:Fqdn><cdm:VMID>1</cdm:VMID> <cdm:Type>ComputerSystem</cdm:Type></cdm:sys.aix.AixUnitaryComputerSystem><cdm:virtualizes source="30" target="20" />
	  </cdm:CDM-ER-Specification></idml:create></idml:operationSet></idml:idml> The problem is caused by the fact that loadidml command reverses the direction
	  of the virtualizes relation while 	checking the naming rule for AixcomputerSystem object. It occurs because both side of relation have the same type.
	  Additional checks to handle this situation were implemented."
IZ55348 The arrow button on the CI details panel does not work correctly. If the user selects the button , and the button	is overlapping with the tab, the tab is
	  selected together with button.
IZ55422 The Veritas Cluster Server does not appear on the components list when the user wants to create/edit Business Application. Therefore the user cannot add
	  this VCSCluser. This is happening because the VCSServer object is not added to the tree of components in the Business Application creation dialog.
IZ55550 There is a problem discovering certain Linux Machines. The discovery is returning an error "Exception while getting packages : " and MissingKeyExceptions
	  for certain machines. The issue is not on all machines. The RPM command which is used by TADDM to list the installed packages on the target Linux machine
	  is producing incorrect output. It is splitting the Summary of one of the packages which is resulting in one word being put on a line by itself. TADDM is
	  expecting a number of variables (NAME, RELEASE, VERSION, etc ) and so produces an error when it only receives one word. Changes were introduced to handle
	  this scenario.
IZ55636 Cisco devices will automatically alter the value of "ntp clock period" which causes TADDM to always consider the files (Startup-Config or Running-Config) as
	  being changed. Changes were introduced to allow TADDM to workaround this by ignoring the "ntp clock period" value in the config files during discovery. This
	  can be activated by changing the setting com.collation.IgnoreCiscoNtpClock" = true in the collation.properties file.
IZ55665 There is an Inconsistency between the displayed label of Business Application in view 'Discovered Components' and 'Change History - Include Components' if a
	  label for Business Application has been changed. On a first view a new label is visible, whereas in the second the old one is shown.
IZ55764 The following indexes were be dropped on ECMDB as they were redundant and caused 2-3x overhead on inserts and updates (e.g. sync or explicitrel.sh)
	  dropIndex("cmdb_guid_alias", "cmdb_guid_alias_midx"); dropIndex("cmdb_guid_alias", "cmdb_guid_alias_aidx"); The only indexes on cmdb_guid_alias should be;
	  CMDB_GUID_ALIAS I_GUID_MSTR_ALIAS MASTER_GUID CMDB_GUID_ALIAS I_GUID_MSTR_ALIAS ALIAS_GUID CMDB_GUID_ALIAS SYS_nnnnnnn ALIAS_GUID
IZ55776 After migration to 7.1.2 there were duplicate applications in the TADDM UI caused by duplicated bindaddr fields.
IZ55779 The Application Infrastructure graph is not working from popup menu "show topology", when the user right clicks on the "Application Infrastructure Ovierview".
	  The customer receives error "There is no graph associated with the following item: null". This is happening because an invalid graph name is referenced.
IZ56124 Application descriptor files are not discovered for Apache components. The error that occurs is "CTJTP1149E No session protocols are listening". Changes
	  were made to resolve this problem.
IZ56191 Prioritisation of "name" attribute for AIX systems does not take priority. When a prioritzation rule is set such that the value of the nameattribute for
	  an AIX system should be taken from the AIX Sensor and not any other sensor e.g. the HMC sensor.
IZ56257 The ChangeManagerPersister is not correctly validating updates to the change_cause_table resulting in SQL Exceptions
	  "java.sql.SQLException: ORA-00001: unique constraint (TADDMADM.SYS_C005233) violated java.sql.SQLException:
	  ORA-00001: unique constraint (TADDMADM.SYS_C005233) violated CREATE TABLE change_cause_table (event_id number not null, cause_id number not null,
	  CMDBSOURCE_X VARCHAR2(192), PRIMARY KEY (event_id,cause_id)); The fix validates if the row does not exist in the change_cause_table.
	  If the row already exists it will be skipped and a debug message will be displayed -- "Found an entry in the change_cause_Table, not inserting this event"
IZ56446 The Custom Server Template created using the same criteria as WeblogicServer sensor does not kick off in Level 3 discovery.
IZ56516 The VeritasCluster sensor creates the fake OracleInstance object with up percase SID, which causes duplicates of OracleInstance. To fix this the prefix for
	  source attribute in etc/discover-sensors/VeritasClusterSensor.xml was added, which can describe if the attribute should be stored in upper/lower-case, e.g.
	  source="%1{Sid}", target="SID".
IZ56770 When manufacturer, model and serial number can not be discovered on a Windows system, the Windows sensor sets the value of each of these attributes to
	  "Unknown", causing all boxes with these values to reconcile with each other.
IZ57710 During a discovery on a windows target machine, the pop-up window is shown informing that the TaddmWmi.exe process crashed. It is also visible in the Windows
	  security.log In TADDM GenericServerSensor.log output from command TaddmTool.exe GetPortMap is empty (does not list the processes).
IZ57746 803 SQL errors occur "DB2 SQL error: SQLCODE: -803, SQLSTATE: 23505, SQLERRMC: 1;S013618" These are caused by unique constraint issues when trying to insert
	  data. Changes were made to perform an update instead of an insert on many to many table duplicates.
IZ57931 Upgrades for 7.1.2 FP1/FP2/FP3 failed with the following error "CTJTI0021E Errors occurred during the upgrade: Domain Manager". The cause was due to environment
	  issues with unicode character confusion. If the $PS1 environment variable includes a '\u' which shows the user that is logged -on, installers can confuse this
	  with a unicode character and can cause failures during installation.
IZ57940 Unable to move access list entries to 1st and 2nd positions. When moved we get duplicated access list entries.
IZ57948 HMC sensor is failing because of a parse exception - ERROR cdb.HmcAgent - HMC discovery error java.lang.NumberFormatException: For input string: "10-FP21".
	  The HMC sensor is expecting the ioslevel command result to be in the format 10-FP-21. The fix will enable the sensor to handle other formats.
IZ58006 There is a lack of automatic redirection from login page to previous page in Launch In Context when credentials have not been provided in the URL of the first address.
	  The current flow:
	  1. You are in non-SSO configuration.
	  2. You put an address: http://taddmserver:port/cdm/servlet/LICServlet?guid=GUID&console=web
	  3. You get an error page with message: CTJTC0011E Either this session is not valid, or the user ID is not an authorized user. Log in as an authorized user.
	  4. When you click 'Log in as an authorized user', you login to TADDM and main page of Domain Manager. With this fix you are immediately redirected to the page which you specified.
IZ58250 When the option single sign-on is enabled and Launch in Context is called with a view of details panel and no username/password is specified then a web page
	  with error CTJTC0011E occurs.The user should get a requested view without specifying username/password.

7546  Press "2 for Previous" option did not work properly with the FixPack console install mode.
11186 Install FP1 on top of 7.1.2 Base, shows misleading message about zip files not in fix pack image. These messages were removed.
	/tmp/cmdb/TADDM712_FP1/FP120090330/fixpack/collation/linux.zip is not in fix pack image
	/tmp/cmdb/TADDM712_FP1/FP120090330/fixpack/collation/solaris.zip is not in fix pack image
	/tmp/cmdb/TADDM712_FP1/FP120090330/fixpack/collation/aix.zip is not in fix pack image
	/tmp/cmdb/TADDM712_FP1/FP120090330/fixpack/collation/windows.zip is not in fix pack image
	/tmp/cmdb/TADDM712_FP1/FP120090330/fixpack/collation/linuxS390.zip is not in fix pack image
12454 When the property com.collation.RestartWmiOnFailure=true in collation.properties and then when testssh.py is run it "produces" the wrong command.
	i.e. ./testssh.py -u  -p  IP ipconfig. The wrong command is run on target system.




IV. INSTALLATION INSTRUCTIONS:

Upgrading to version 7.1.2.4

Before upgrading Tivoli Application Dependency Discovery Manager (TADDM), check to ensure that your 
computing environment meets the requirements for each of the principal components of TADDM.

	Performing prerequisite tasks
----------------------------------------------------------------------------------------------
1.	If the TADDM server is running, stop the TADDM server.
2.	Use one of the following procedures to ensure all TADDM Server Java processes are stopped:

•	For Linux, Solaris, AIX, and Linux on System z operating systems, complete the following steps:
a.	Go to the /opt/IBM/cmdb/dist/bin directory.
b.	Enter the following command: ./control stop
c.	If all of the Java processes have not stopped after entering the ./control stop command and waiting an 
appropriate amount of time for the processes to shut down, use the process ID information provided by the ps 
command to identify and stop the running Java processes related to TADDM:  ps -ef | grep java

•	For Window systems, use the Windows Task Manager to ensure that all TADDM Server Java processes are stopped.

3.	Create a backup of the database. To create a backup of a DB2 database, complete the following steps:
a.	Use one of the following procedures:
•	For Linux, Solaris, AIX, and Linux on System z operating systems, log in as the DB2 database instance owner. 
For example, you can use the db2inst1 ID.
•	For Windows operating systems, open the DB2CMD command prompt.
b.	Run the following command:  db2 backup database cmdb
	Replace cmdb with the name of your database.

If you use an Oracle database, refer to the Oracle documentation for instructions about how to back up the database.

4.	Create a complete backup of the server files. Depending on the operating system, use the zip or tar command 
to compress the entire directory. For Linux, Solaris, AIX, and Linux on System z operating systems, you want to use the tar command on the 
/opt/IBM/cmdb directory. For Windows operating systems, you want to use the zip command on the C:\ibm\cmdb directory.

5.	(Optional) If you made changes to any of these files, save a copy of them:
			cmdb-context.xml file  (or ecmdb-context.xml if an enterprise TADDM)
	 		etc/discover-sensors/*
			etc/sync/*
After the upgrade process is complete, you need to merge the contents of these backup files with the contents 
of the newly installed versions before starting the server.

6.	Back up the InstallShield product registry directory:
•	For the non-root user upgrading on Linux, Solaris, AIX, and Linux on System z operating systems, in the home 
user top directory, use the tar command on the following directory: InstallShield
•	For the root user upgrading on Linux and Linux on System z operating systems, use the tar command on the following directory: 
/root/InstallShield
•	For the root user upgrading on the Solaris operating systems, use the tar command on the following directory: /InstallShield
•	For the root user upgrading on AIX, use the tar command on the following directory: /usr/lib/objrepos/InstallShield
•	For Windows operating system, use the zip command on the following directory: c:\Program Files\Common Files\InstallShield


	Upgrade Instructions
-----------------------------------------------------------------------------------------------------------
Before beginning the upgrade, verify that your system is running a supported operating system and that all 
hardware and software requirements are met. 

Also, if you use a TADDM Enterprise Domain Server, upgrade your TADDM Enterprise Domain Server before 
upgrading the TADDM Domain Server. You must upgrade the TADDM Enterprise Domain Server and all leaf nodes at the same time. 
You can use the following instructions to upgrade the TADDM Domain Server and the TADDM Enterprise Domain Server.


To upgrade the TADDM Server, complete the following steps:

1.	Change to the TADDM Fix Pack directory

2.	Use one of the following commands to run the upgrade process, replacing 'taddm_dir' with your TADDM directory 
and do not include dist in the path(example taddm_dir; /opt/IBM/cmdb):

•	For Linux, Solaris, AIX, and Linux on System z operating systems:
	To run the fix pack installation in GUI mode, type:  ./installFixPack.sh taddm_dir
		
	To run the fix pack installation in console mode, type:
	./installFixPack.sh taddm_dir -console

	To run the fix pack installation in silent mode, type:
	./installFixPack.sh taddm_dir -silent

•	For Windows operating systems:
	To run the fix pack installation in GUI mode, type:  installFixPack.bat taddm_dir
	
	To run the fix pack installation in console mode, type:
	installFixPack.bat taddm_dir -console

	To run the fix pack installation in silent mode, type:
	installFixPack.bat taddm_dir -silent



3.	If the specified TADDM directory is version 7.1.2 , the installer prompts you for the upgrade. 
	Click Next to proceed.

4.	After the upgrade process is complete, a page indicating the status of the upgrade is displayed. 
	Click Finish to close the upgrade program.

5.	If you saved a backup copy of any files in step 6 (the "Performing prerequisite tasks" section), merge the contents 
	of the backup copy with the contents of the new file that is installed as a part of the upgrade. 

6.	Restart the TADDM server.

If an errors occur during the upgrade, you can correct the problem and restart the TADDM installation process. The installation 
The process resumes the upgrade process; you do not have to repeat any steps that were successfully completed.

Locating Log Files
The fix pack installer creates several log files in the installLogs directory during the upgrade:
•	Main log files
	installLogs/cdb_upgrade_7.1.2.4.log
	installLogs/cdb_upgrade_7.1.2.4_stdout.log
	installLogs/cdb_upgrade_7.1.2.4_stderr.log
•	DB upgrade log files
	installLogs/db_upgrade_7.1.2.4_stdout.log
	installLogs/db_upgrade_7.1.2.4_stderr.log
•	Other database upgrade log files
	dist/log/migration.log
	

7. If you are running the TADDM backend DB on Z/OS DB2 please see section "Z/OS DB2 migration support to Fix Pack 4"
near the end of this README to complete the installation process. All Z/OS DB2 users must complete this section
before proceeding.


8. Clearing the Java Web Start cache
After you install the server, you might have to clear the Java Web Start cache on each client system where you log in to the Product Console.

To clear the Java Web Start cache, complete the following steps: 
1.	Go to the directory where Java 1.5 is installed. 
2.	Change to the \jre\bin directory.
3.	Double-click javaws.exe. 
	a.	In the Java Application Cache Viewer window, click Edit > Preferences. 
	b.	In the Java Control panel, under the Temporary Internet Files section, click Delete Files, select all check boxes, and click OK.
	c.	Click OK.

9. If you have an Ecmdb (Enterprise Server), please perform the following steps on the Ecmdb to ensure
that roles are not deleted with subsequent full syncs or domain deletes. If you have completed this step 
with prior maintenance, it does not have to be repeated.

	1. Run this query from dist/bin

	./dbquery.sh "select persobj.cmdbsource_x, domains.DISPLAYNAME_X from persobj 
	join domains on persobj.cmdbsource_x = domains.guid_x where persobj.CLASSNAME_X='com.collation.platform.model.topology.process.Role'"

	2. If step 1 produces no results, stop here.

	3. If step 1 produces results such as;

	CMDBSOURCE_X            DISPLAYNAME_X
	C1C612A06CC535CBB39D590F2DDC7132                domaina
	C1C612A06CC535CBB39D590F2DDC7132                domaina
	C1C612A06CC535CBB39D590F2DDC7132                domaina

	Please update the persobj table so that the cmdbsource_x is set to null for the domain. This can be done
	with the following query;


	update persobj set cmdbsource_x=null where CLASSNAME_X='com.collation.platform.model.topology.process.Role'

	NOTE: You can place the above line in a file, and run it with dbupdate.sh, for example;

	./dbupdate.sh <filename>

	Or you can run the update directly from your database server. 

10. If integrating TADDM with TBSM, CCMDB, or any other third party product please be sure to copy the necessary client jars to those installations.


Upgrading the database manually
-----------------------------------------------------------------------------------------------------------

The Fix Pack installation procedures above will upgrade the TADDM database to the current Fix Pack level. 
Normally customers do not need to manually upgrade the database. However, one can upgrade the database 
manually if your TADDM Server is at the current version, 7.1.2.4, but your TADDM Database is an earlier 
version of TADDM 7.1.2(for example, Interim Fix 1, 2 or 3, or GA 7.1.2).
These steps also may be required if the Fix Pack installation failed in the database steps. Please 
contact support if the database upgrade failed to confirm whether or not the DB must be restored
before proceeding with a manual upgrade.


If you are using a DB2 database, complete the following steps:
1.	Log in as the DB2 database instance owner.

2.	Run the following command:
	db2 reorgchk update statistics on table all > reorg.out

3.	In the reorg.out file, look in the reorg column for entries marked with a wildcard character. The wildcard character 
is an asterisk (*). For each line with a wildcard character, run the following command:
	db2 reorg table tablename 
	db2 terminate

If you use an Oracle database, refer to the Oracle documentation for instructions about how to reorganize the database.

To manually upgrade the database, complete the following steps:
1.	If it is running, stop the TADDM Server.

2.	Change to the directory where the TADDM Server is installed. For example, the /opt/IBM/cmdb/dist/bin directory.
	
3.	Use one of the following procedures to upgrade the database:
•	To upgrade for Linux, Solaris, AIX, or Linux on System z operating systems, run the following command:
	./migration.sh -s -bv 7.1.2

•	To upgrade for Windows operating systems, run the following command:
	./migration.bat -s -bv 7.1.2

4.	Verify that no errors occurred by checking the appropriate log file:
•	For Linux, Solaris, AIX, or Linux on System z operating systems, $COLLATION_HOME/log/migration.log
•	For Windows operating systems, %COLLATION_HOME%\log\migration.log

5.	Start the TADDM Server. Wait for the server to start. The server status must be running before you start the next step.

If an error occurred, fix the problem and rerun the script. If no errors occurred, go to the next step.

5.	Use one of the following procedures to upgrade the database templates:
•	To upgrade for Linux, Solaris, AIX, or Linux on System z operating systems, run the following command:
	./migration.sh -t -bv 7.1.2

•	To upgrade for Windows operating systems, run the following command:
	./migration.bat -t -bv 7.1.2

6.	Verify that no errors occurred by checking the appropriate log file:

•	For Linux, Solaris, AIX, or Linux on System z operating systems, $COLLATION_HOME/log/migration.log
•	For Windows operating systems, %COLLATION_HOME%\log\migration.log

If an error occurred, fix the problem and rerun the script. If no errors occurred, migration is complete.




See "VIII. ADDITIONAL INFORMATION" for additional steps that you might need to do in your environment. 
    

V. UNINSTALLATION INSTRUCTIONS:
-----------------------------------------------------------------------------------------------------------

Roll back the upgrade to version 7.1.2
The rollback process is different depending on the operating system. The instructions in this section assume that the default 
installation location was used. If you used a different location when installing and upgrading your server, substitute 
that path for the paths indicated in this section.

To roll back the server from a Windows computer, complete the following steps: 

1.	Stop the server. To stop the server, make sure you are logged in with the user ID that was specified as the 
	owner of the installation when the software was installed. Go to the c:\ibm\cmdb\dist\bin directory. Enter the 
	following command:  stopserver.bat

2.	Restore the backup files for the server. (You created a backup of these files before you upgraded.) To restore 
	the backup files for the server, complete the following steps: 
	1.	Go to the following directory: c:\ibm
	2.	Rename the current installation directory to cmdb.bak. 
	3.	Extract the backup files. For example, use the following command: unzip cmdb.zip

3.	Restore the backup InstallShield product registry directory. (You created a backup of this directory before you upgraded.) 
	To restore the backup, extract the backup of the following directory: c:\program files\Common Files\InstallShield

4.	Restore the database. Use one of the following procedures: 
•	To restore a DB2 database, complete the following steps: 
	1.	Log in as the DB2 database instance owner. For example, you can use the db2inst1 ID. 
	2.	Run the following command: db2 restore database cmdb Replace cmdb with the name of your database.
•	To restore an Oracle database, refer to the Oracle documentation for instructions.

5.	Start the TADDM server


To roll back the upgrade from a Linux, Solaris, AIX, and Linux on System z operating systems, complete the following steps:

1.	Stop the server. To stop the server, make sure that you are logged in with the user ID that was specified as the owner 
	of the installation when the software was installed. Go to the opt/IBM/cmdb/dist/bin directory. Enter the following command:
	./control stop

2.	If all of the Java processes have not stopped after entering the ./control stop command and waiting an appropriate 
	amount of time for the processes to shut down, use the process ID information provided by the ps command to identify 
	and stop the running Java processes related to TADDM:
	ps –ef | grep java

3.	Delete the TADDM installation directory: /opt/IBM/cmdb

4.	Restore the backup files for the server. (You created a backup of these files before you installed.) To restore the 
	backup files for the server, complete the following steps:
a.	Go to the following directory: /opt/IBM
b.	Rename the current installation directory to cmdb.bak.
c.	Extract the backup files. For example, use the following command: untar cmdb.tar

5.	Use the following command to change file ownership to non-root (run as user): 
	chown <non-root_user_ID>: <non-root_user_group> <collation_home>

	For example, chown cmdbuser : cmdbgrp /opt/ibm/cmdb/dist

6.	Restore the backup copy of the InstallShield product registry directory. (You created a backup of this directory before 
	you installed.) To restore the backup, use one of the following procedures:
•	For the non-root user rolling back on Linux, Solaris, AIX, and Linux on System z operating systems, in the home user top 
	directory, extract the backup of the following directory: InstallShield 
•	For the root user rolling back on Linux and Linux on System z operating systems, extract the backup of the following directory: 
	/root/InstallShield
•	For the root user rolling back on the Solaris operating systems, extract the backup of the following directory: /InstallShield
•	For the root user rolling back on AIX, extract the backup of the following directory: /usr/lib/objrepos/InstallShield

7.	Restore the database. Use one of the following procedures:
•	To restore a DB2 database, complete the following steps: 
a.	Log in as the DB2 database instance owner. For example, you can use the db2inst1 ID.
b.	Run the following command: 
	db2 restore database cmdb 

	Replace cmdb with the name of your database.
•	To restore an Oracle database, refer to the Oracle documentation for instructions.

8.	Start the server


VI. MODIFIED FILES:

     %TADDM_HOME%/dist/osgi/*
     %TADDM_HOME%/dist/extensions
     %TADDM_HOME%/dist/lib/*
     %TADDM_HOME%/dist/etc/*
     %TADDM_HOME%/dist/deploy-tomcat/*
     %TADDM_HOME%/dist/sdk/*
     %TADDM_HOME%/dist/images/*
     %TADDM_HOME%/dist/nls/*
     %TADDM_HOME%/dist/support/*
     %TADDM_HOME%/dist/tools/*
     %TADDM_HOME%/dist/deploy-tomcat/*
     %TADDM_HOME%/dist/bin/*
     %TADDM_HOME%/dist




VII. KNOWN DEFECTS OR LIMITATIONS

** Checksum calculation of config files larger than 300000 bytes is changed. Customer should expect that change 
history and component comparison will show a change for those files after this Fix Pack 3 is applied.

** After Fix Pack installations custom BIRT reports (installed after taddm installation) can be missing, to restore them:
1. locate appropriate .rtpdesign file /dist/deploy-tomcat/birt-viewer/WEB-INF/report folder
2. copy it on GUI client machine (machine on which you are using taddm gui)
3. remove it from WEB-INF/report
4. use domain manager GUI to upload it again
This was corrected under APAR IZ53906 in FP4.

** If you create a new role in ecmdb and then create a new user group with that role, you cannot 
log in to domain manager with the logins that you associate to the group (However, you can log in to the Java console). 
There is no workaround other then to not create new roles for domain manager users, use the supplied 
logins. This issue will be addressed in a future Interim Fix(#2523).

** The Domain Manager console remembers the last login. It is not possible to log into DM using any other login until the
browser is closed and then reopened. The problem affects both IE as well as Firefox browers.
The cause of the problem is that the Web browser holds the HTTP session and closing only the Domain Manager window
(by clicking "Close Window" button) does not invalidate the session.
The workaround for the problem is to close the Domain Manager window by clicking the Domain Managers Menu->Exit option.
This option generates a logoff action at the TADDM server.  The Domain Manager window closes
automatically and the HTTP session is invalidated.

** In eCMDB the "Show Changes" function does not work in Internet Explorer. After selecting the time frame and
clicking Show Changes, the changes do not display even after 10 minutes. The red 
sign "Loading..." stays on in the status bar even after the "Show Changes" window is closed with the "Close" button.
To work around this, use FireFox (#2691). 

** Solaris zones generic sensor is not enabled in Level 2 Discovery and Level 3 Discovery profiles.
Create new profile and enable ZonesGenericSensor to use it. This issue will be addressed in a future release(#7559).

** Storage Sensor when started for Solaris local or branded zone returns with message 
!MSG!!CLS!com.collation.discover.observer.messages.DiscoverObserverLocalizedMessages!IDM!TopoPump.I.4!MSG!.
Access to "/dev/dsk" is not available on such target systems and all storage information is not retrieved.
The message will be updated in a future release to indicate this limitation(#5433)

** Press "2 for Previous" option may not work properly with the Fix Pack console install mode.
Customers should only use Next option to proceed thru console installer, or cancel(# 7546).

** If there is an Ecmdb (Enterprise Server) and step 8 of the "Upgrade Instructions" was not performed at upgrade time, 
one may receive the following error at login to Ecmdb if a domain was fully synchronized or deleted;

"CTJTC0122E The application cannot report the Administrator status for the user"

To confirm the issue, run this query from dist/bin

./dbquery.sh "select NAME_X from persobj where CLASSNAME_X='com.collation.platform.model.topology.process.Role'"  

It should return these three default roles plus any that may have been added manually;   

ITSM:operator
ITSM:administrator
ITSM:supervisor

If the three default roles are not returned, they can be re-added by running the following api
import/export from dist/sdk/bin;

./api.sh -u administrator -p <password> find --depth -1 "select * from Role" > role.xml

./api.sh -u administrator -p <password> import role.xml

** The CDM class admin.ContactInfo contains four deprecated attributes: Room, Floor, City, Countrty. 
Please do not use TADDM api methods to operate on these attributes.



VIII. ADDITIONAL INFORMATION:



Z/OS DB2 backend support
========================
Suported versions:
DB2 - V9.1, 
zOS - any version supporting DB2 V9.1

Storage requirements:
TADDM  TABLESPACEs can be classified as:
–	Explicit Tablespaces (defined in collation.properies)
•	Tablespaces can be classified based on schema to:
?	A type tablespaces – primary user
?	B type tablespaces – archive user
•	Tablespaces can be classified based on size to:
•	4k tablespace
•	8k tablespace
•	32k tablespace
–	Implicit Tablespaces (for LOBs)
Autogenerated for each LOB column. LOB tablespace names are different on each TADDM installation. After installation, it is required to execute additional ALTER statements, which are different for each TADDM installation. Alter statements are generated using SELECT statement and can be found in TADDM documentation.

TADDM database size depends on PRIQTY and SECQTY parameters used in CREATE TABLESPACE and CREATE INDEX statements.

Example 1:
	PRIQTY	SECQTY	Required storage:
CREATE TABLESPACE	500	1000	12 volumes x 1.6 GB = 19 GB
CREATE INDEX	200	200	
CREATE TABLESPACE (for LOB objects)	DB2 adjusted
	

Example 2.
	PRIQTY	SECQTY	Required storage:
CREATE TABLESPACE	1000	2000	20 volumes x 1.6GB = 32 GB
CREATE INDEX	1000	1000	
CREATE TABLESPACE (for LOB objects)	DB2 adjusted
	



To complete an advanced installation for the server with a remote DB2 database,
complete the following steps:

Note: Do not start TADDM after just after installation process and do not allow to create database using installer. Continue with the following steps:

1. Taddm requires 2 users defined on DB2 server. On the system where the DB2 server is installed, create a DB2 database USER_ID and a DB2 database ARCHIVE_USER_ID.  (USER_ID and ARCHIVE_USER_ID are required during installation process) For more information, refer to the DB2 for z/OS documentation.

2. From the system where TADDM is installed, verify the JDBC connection to
the remote DB2 for z/OS database. You can use the DB2 Control Center to
connect to the database. The JDBC URL to connect to is as follows:
jdbc:db2://hostname:port/database_ssid_name
Note: Depending upon the application you use to connect to the database,
you might need to install additional license .jar files on the client
system to support connecting to DB2 z/OS. In addition, if you are
using DB2 Control Center, you must also configure and start stored
procedures on the z/OS system.

3. Create the DB2 database and tablespaces for TADDM. The TADDM database
uses the SYSDEFLT storage group.  For each LOB column, TADDM uses implicit relation to LOB tablespace auto generated by DB2.
 The following SQL statements show examples of DB2 storage definitions on z/OS for the TADDM tablespaces:

Note: Before running the following commands, change PRIQTY SECQTY values to specific environment requirements. This will impact database size.

CREATE DATABASE CMDB STOGROUP SYSDEFLT BUFFERPOOL BP32K;
CREATE TABLESPACE CMDBA4K IN CMDB USING STOGROUP SYSDEFLT PRIQTY 1000 SECQTY 2000 ERASE YES CLOSE NO LOCKSIZE ROW LOCKMAX 0 BUFFERPOOL BP2 SEGSIZE 4;
CREATE TABLESPACE CMDBA8K IN CMDB USING STOGROUP SYSDEFLT PRIQTY 1000 SECQTY 2000 ERASE YES CLOSE NO LOCKSIZE ROW LOCKMAX 0 BUFFERPOOL BP8K0 SEGSIZE 4;
CREATE TABLESPACE CMDBA32K IN CMDB USING STOGROUP SYSDEFLT PRIQTY 1000 SECQTY 2000 ERASE YES CLOSE NO LOCKSIZE ROW LOCKMAX 0 BUFFERPOOL BP32K SEGSIZE 4;
CREATE TABLESPACE CMDBB4K IN CMDB USING STOGROUP SYSDEFLT PRIQTY 1000 SECQTY 2000 ERASE YES CLOSE NO LOCKSIZE ROW LOCKMAX 0 BUFFERPOOL BP2 SEGSIZE 4;
CREATE TABLESPACE CMDBB8K IN CMDB USING STOGROUP SYSDEFLT PRIQTY 1000 SECQTY 2000 ERASE YES CLOSE NO LOCKSIZE ROW LOCKMAX 0 BUFFERPOOL BP8K0 SEGSIZE 4;
CREATE TABLESPACE CMDBB32K IN CMDB USING STOGROUP SYSDEFLT PRIQTY 1000 SECQTY 2000 ERASE YES CLOSE NO LOCKSIZE ROW LOCKMAX 0 BUFFERPOOL BP32K SEGSIZE 4;

CREATE TABLESPACE CTS14K IN CMDB USING STOGROUP SYSDEFLT PRIQTY 1000 SECQTY 2000 ERASE YES CLOSE NO LOCKSIZE ROW LOCKMAX 0 BUFFERPOOL BP2 SEGSIZE 4;


Values in commands above may be different for each TADDM installation and should be adjusted by DB2 zOS administrator.
Values of: PRIQTY, SECQTY will have impact on database size, configure them according to specific environment needs.


Note: Each tablespace name used in this step must be configured in the
collation.properties file. If you use tablespace names or database name that are different
from the default names in this example, you must modify
collation.properties after installation. Tablespace names on DB2 for
z/OS are limited to 8 characters in length.

4.  Grant the required database access to TADDM users.
Example:
GRANT DBADM ON DATABASE CMDB TO USER_ID;
GRANT USE OF BUFFERPOOL BP32K TO USER_ID;

GRANT DBADM ON DATABASE CMDB TO ARCHIVE_USER_ID;
GRANT USE OF BUFFERPOOL BP32K TO ARCHIVE_USER_ID;

Note: Depending on the system configuration, you might need to grant access
to additional system resources required by the ARCHIVE_USER_ID.

5.  Configure the following parameters in DB2 zOS configuration. 
U Lock for RR/RS 		- change to YES
Skip Uncommitted Inserts	- change to YES
Evaluate Uncommited		- change to YES
Number of Locks per User	- change to 30,000
Resource Timeout		- change to 150 seconds
Idle Thread Timeout		- change to 0 (disabled it)
RID POOL SIZE	            - change to 0
Deadlock Detection		- change to DEADLOK='2,1' (this is in the IRLM startup proc)

Change size of bufferpools, increase default values. 
BP32K – change to 1500
BP8K0 – change to 12000
BP2 – change to 90000
The following bufferpool values may be different for each TADDM installation and should be adjusted by DB2 zOS administrator.

6. Check the collation.properties file to verify that the following line exists:
com.collation.db.type=db2zos
Also verify that the com.collation.db.db2zos.* parameters are correct. These
parameters are configured by the installer with default values and should be verified by DB2 zOS administrator. (For example, if you used different
tablespace names in previous steps, you must modify the parameters to match
the names you used.) 
The default parameter values are as follows:
com.collation.db.db2zos.dbname=CMDB
com.collation.db.db2zos.stogroup=SYSDEFLT
com.collation.db.db2zos.tablespacea4k=CMDBA4K
com.collation.db.db2zos.tablespaceb4k=CMDBB4K
com.collation.db.db2zos.tablespacea8k=CMDBA8K
com.collation.db.db2zos.tablespaceb8k=CMDBB8K
com.collation.db.db2zos.tablespacea32k=CMDBA32K
com.collation.db.db2zos.tablespaceb32k=CMDBB32K
com.collation.db.db2zos.index.bufferpool=BP32K
com.collation.db.db2zos.index.priqty=1000
com.collation.db.db2zos.index.secqty=2000

Add new property:
com.collation.db.db2zos.customtablespace={tsname:CTS14K,tname:change_sync};
This expression will map custom tables to individual tablespaces. In this example, tablespace named “CTS14K” will contain table named “change_sync”

Verify also the following parameters:
com.collation.discover.dwcount, com.collation.discover.observer.topopumpcount
Default values for both properties is 16, but it is recommended do decrease both as below:
com.collation.discover.dwcount=16
com.collation.discover.observer.topopumpcount=8
 Lower values are advised for slower databases.

com.collation.db.db2zos.index.priqty=1000
com.collation.db.db2zos.index.secqty=2000
Values of: PRIQTY, SECQTY will have impact on database size, configure them according to specific environment needs.

7. Installing the DB2 zOS Universal JDBC Driver. In case of problems refer to proper IBM documentation. Before connecting to DB2,using any JDBC tool, this step is mandatory.

$JAVA_HOME/bin/java -cp $TADDM_HOME/dist/lib/jdbc/db2jcc.jar:$TADDM_HOME/dist/lib/jdbc/db2jcc_license_cisuz.jar:$TADDM_HOME/dist/lib/jdbc/db2jcc_license_cu.jar com.ibm.db2.jcc.DB2Binder -url jdbc:db2://hostname:port/SSID -user XXX  -password YYY -action ADD -size 15 -blocking ALL

And also:
REBIND on PACKAGE SYSLH200 to use the KEEPDYNAMIC YES option.

8. Start TADDM 
During first start, TADDM will create all tables and generate all required tablespaces 

9. Stop TADDM

10. Configure all tablespaces in CMDB database with the following parameters:
	LOCKMAX			- change to 0 (to disable lock escalation)
	LOCKMODE			- change to row

	select 'ALTER TABLESPACE ' || DBNAME || '.' || name  || ' locksize LOB lockmax 0;' from sysibm.systablespace where DBNAME = 'CMDB' and type='O' ;
	select 'ALTER TABLESPACE ' || DBNAME || '.' || name  || ' locksize ROW lockmax 0;' from sysibm.systablespace where DBNAME = 'CMDB' and type='G' ;

Execute all generated ALTER STATEMENTS.

11. Restart DB2.

Post discovery database maintenance. 
Once first discovery has been performed (database contains any data), it is required to apply the following maintenance steps:

1. Stop TADDM.

2. Generate the RUNSTATS control statement for each new database and execute them. 
Generate RUNSTATS example for database name CMDB:
   SELECT DISTINCT                                                    
'RUNSTATS TABLESPACE CMDB.'!!TSNAME!!' INDEX(ALL) SHRLEVEL REFERENCE' 
   FROM SYSIBM.SYSTABLES                                              
   WHERE DBNAME = 'CMDB'                                              
   ORDER BY 1;                                                        

3.  Generate the UPDATE control statement for each new database and execute them. This must be run immediately after RUNSTATS is complete.

In each SELECT statement replace “SYSADM” with appropriate schema name, which is represented by USER_ID, ARCHIVE_USER_ID. 

Execute each SELECT for both schemas: USER_ID, ARCHIVE_USER_ID. This will generate UPDATE statements.

Execute each UPDATE SYSIBM.SYSINDEXES and UPDATE SYSIBM.SYSCOLUMNS for both schemas: USER_ID, ARCHIVE_USER_ID. 

select
'UPDATE SYSIBM.SYSINDEXES SET FIRSTKEYCARDF=FULLKEYCARDF WHERE NAME = '||''''||CAST(RTRIM(name) AS VARCHAR(40))||''''||' AND CREATOR = '||''''||CAST(RTRIM(creator) AS VARCHAR(40))||''''||' AND TBNAME = '||''''||CAST(RTRIM(tbname) AS VARCHAR(40))||''''||' AND TBCREATOR = '||''''||CAST(RTRIM(tbcreator) AS VARCHAR(40))||''''||';'
from sysibm.sysindexes a
where tbcreator = 'SYSADM'
AND   NAME IN
(SELECT IXNAME
 FROM SYSIBM.SYSKEYS B
 WHERE A.CREATOR = B.IXCREATOR
   AND A.NAME    = B.IXNAME
   AND COLNAME   = 'PK__JDOIDX');

select
'UPDATE SYSIBM.SYSCOLUMNS SET COLCARDF=(SELECT FULLKEYCARDF FROM SYSIBM.SYSINDEXES WHERE NAME = '||''''||CAST(RTRIM(name) AS VARCHAR(40))||''''||' AND CREATOR = '||''''||CAST(RTRIM(creator) AS VARCHAR(40))||''''||' AND TBNAME = '||''''||CAST(RTRIM(tbname) AS VARCHAR(40))||''''||' AND TBCREATOR = '||''''||CAST(RTRIM(tbcreator) AS VARCHAR(40))||''''||') WHERE NAME = '||''''||'PK__JDOIDX'||''''||' AND TBNAME = '||''''||CAST(RTRIM(tbname) AS VARCHAR(40))||''''||' AND TBCREATOR = '||''''||CAST(RTRIM(tbcreator) AS VARCHAR(40))||''''||';'
from sysibm.sysindexes a
where tbcreator = 'SYSADM'
AND   NAME IN
(SELECT IXNAME
 FROM SYSIBM.SYSKEYS B
 WHERE A.CREATOR = B.IXCREATOR
   AND A.NAME    = B.IXNAME
   AND COLNAME   = 'PK__JDOIDX');

Tables maintenance tasks:
Some TADDM tables are huge and contain much more data than others. To keep database is good health it is required to monitor their size and their tablespaces. The tables below require altering storage attributes: PRIQTY, SECQTY, based on individual requirements or even moving to separate tablespaces.

List of tables to be monitored and altered if needed:
CHANGE_HISTORY_TABLE               
CMDB_GUID_ALIAS                    
PERSOBJ                            
CHANGE_HISTORY_TABLE            
RELATION                           
SFTCMP                             
MEDACDEV                           
WINSVC                             
MSSOBJLINK                         
BINDADDR                           
OPSYS                              
OPERATINGSYSENTS_FD67DE48X         
COMPSYS                            
COMPOSITE                          
MSSOBJLINK_REL                     
SOFTMODL                           
RUNTIMEPROCESSJDO_PORTS_X          
COMPUTERSYSTICES_E032D816X         
APPSRVR                            
IPINTRFC                           
ORCLINITV                          
RUNTIMEPROCEORTS_13B7EE75X         
IPROUTE                            
IPADDR                             



Problems and solutions:
Problem with storage on zOS.
DBInit fails. SQLCODE: -904 error seen in TopologyManager.log. 
It is required to increase storage capacity on zOS, mount additional volumes. Decrease the PRIQTY, SECQTY, which has significant impact on database size.

Multiple sensors failing in GUI with Storage Errors.
If multiple sensors are failing with Storage Error message and  SQLCODE: -803, SQLCODE: -913 errors are seen in TopologyManager.log. 
- make sure all database parameters has been configured correctly, there is no lock escalation, to check if all DB2 parameters has been configured refer to TADDM documentation
- decrease the following properties in collation.properties
com.collation.discover.dwcount=16
com.collation.discover.observer.topopumpcount=16
On slow databases it is recommended to use value of 4 for both properties.

	
Database removal.
If you encounter a problem and need to start the installation process again, you
must manually remove the TADDM database on the DB2 for z/OS system. The
following SQL statements show examples of dropping the TADDM tablespaces and
database, using the default tablespace names:
DROP TABLESPACE CMDB.CMDBA4K;
DROP TABLESPACE CMDB.CMDBA8K;
DROP TABLESPACE CMDB.CMDBA32K;
DROP TABLESPACE CMDB.CMDBB4K;
DROP TABLESPACE CMDB.CMDBB8K;
DROP TABLESPACE CMDB.CMDBB32K;
DROP TABLESPACE CMDB.CTS14K;
DROP DATABASE CMDB;


Known limitations on DB2 for zOS:
 “Clear topology” command is not supported on DB2 for zOS. It is required to drop database instead of “clear topology”. 
Before doing so, export (backup) scopes and profiles as well as backing up the access lists.


Z/OS DB2 migration support to Fix Pack 4
========================================
Supported versions:
DB2 - V9.1, 
zOS - any version supporting DB2 V9.1

On DB2 for zOS, migration has to be performed manually. FP3 contains migration script: DB2zOS10_ModSchemaTmpl.sql, which is not a pure SQL, 
It requires changing some configuration parameters that are taken from collation.properties.

For example, collation.properties contains the following properties, for which we show example values;
com.collation.db.db2zos.dbname=CMDB
com.collation.db.db2zos.stogroup=SYSDEFLT
com.collation.db.db2zos.tablespacea4k=CMDBA4K
com.collation.db.db2zos.tablespaceb4k=CMDBB4K
com.collation.db.db2zos.tablespacea8k=CMDBA8K
com.collation.db.db2zos.tablespaceb8k=CMDBB8K
com.collation.db.db2zos.tablespacea32k=CMDBA32K
com.collation.db.db2zos.tablespaceb32k=CMDBB32K
com.collation.db.db2zos.index.bufferpool=BP32K
com.collation.db.db2zos.index.priqty=1000
com.collation.db.db2zos.index.secqty=2000

DB2zOS10_ModSchemaTmpl.sql contains as an example the following line:
CREATE TABLE ENGINEJDO_GENERATOR_X (JDOORDERX INTEGER, PK__GENERATOR_X VARCHAR(192), PK__JDOIDX VARCHAR(192)) IN <#dbname>.<#tablespacea4k>;

User is required to execute dist/bin/convert_db2zos_sql.sh (dist/bin/convert_db2zos_sql.bat) script, which will replace each '<#...>‘, 
with appropriate value from collation.properties in file ../etc/schema_upgrade/7.1.2/DB2zOS10_ModSchema.sql.
In this example, the output line will look like this:
CREATE TABLE ENGINEJDO_GENERATOR_X (JDOORDERX INTEGER, PK__GENERATOR_X VARCHAR(192), PK__JDOIDX VARCHAR(192)) IN CMDB.CMDBA4K;

Script usage:
# cd dist/bin
# ./convert_db2zos_sql.sh ../etc/schema_upgrade/7.1.2/DB2zOS10_ModSchemaTmpl.sql


The script generates as an output SQL file: ../etc/schema_upgrade/7.1.2/DB2zOS10_ModSchema.sql
when successful.  This output file then must be executed on DB2 for zOS, for example "db2 -tvf DB2zOS10_ModSchema.sql".





REST API Support
=================

See the TADDM publications for more detail on this support. In Fix Pack1, this function can be disabled as follows:


To disable REST API in FP1, set the following property in collation.properties to false:

com.ibm.api.rest.enabled=true