Wednesday, October 10, 2007

Informatica Upgradation to 8.1.1

This document will prepare you for the things you should look for when planning your upgrade so that your upgrade process will go as smoothly as possible.

IMPORTANT NOTES:
  • This document is for issues that will arise when upgrading from PowerCenter 7.1.x only. If you are upgrading from versions prior to 7.1.x, refer to the "Global Customer Support PowerCenter 7.1 Upgrade guide".

  • If you have repositories that are a version prior to 6.0 they cannot be upgraded directly to PowerCenter 8.1.1 SP4. In such cases they must first be upgraded to 6.x or 7.x version and then upgraded to 8.1.1 SP4.

  • For further information on upgrading to PowerCenter 8.1.1 SP4 and a complete list of upgrade changes refer to the PowerCenter 8.1 Upgrade Guide.

  • For a complete list of all known issues and limitations and other upgrade information refer to the PowerCenter 8.1.1 SP4 Release Notes.



1. Upgrade

1.1. Cannot upgrade a repository with special characters in name

The repository service name (which is the same as the repository name) cannot have the following special characters in its name: ?, ", <, >, *, /, , tab and trailing spaces. In previous versions of PowerCenter all these characters were allowed in the repository name. In order to upgrade these repositories, restore the repository with a different name in the older version and then upgrade using 8.1.

1.2. Teradata and Informix repositories no longer supported

You will not be able to upgrade a Teradata or Informix repository using PowerCenter 8.1.
To upgrade a PowerCenter 7.x repository in a Teradata or Informix database, copy the repository to a database supported by PowerCenter 8.1 (Oracle, DB2, Microsoft SQL Server or Sybase) using PowerCenter 7.x. Then upgrade this repository to PowerCenter 8.1.

1.3. Server Grid

Server Grids existing in PowerCenter 7.x will not be upgraded in PowerCenter 8.1. Create a new grid object in the PowerCenter 8.1 Administration Console. Refer to the PowerCenter Upgrade Guide.

1.4. Do not create a new Integration Service for already existing servers in upgraded repositories.

Do not create a new Integration Service for already existing servers in upgraded repositories. If you create a new service in the Administration Console in an upgraded repository with the same name as a server in that same repository there will be two servers of the same name in the Workflow Manager and sessions will be assigned to the original server.
Use the PowerCenter server configuration file in the Upgrade tab in the Administration Console.

1.5. Repository Service cannot create or upgrade repository on Oracle 10

The Repository Service cannot create or upgrade a repository on Oracle when the Oracle server version is 10.1.0.2 or 10.1.0.3 and is on a different platform than the Oracle client.
The Repository Service writes the following message to the service log:

ERROR: OBJM_54543 [Tue Nov 09 19:42:35 2004] : (23201972) DataBase error: ORA-01455: converting column overflows integer datatype

Workaround: Perform one of the following actions:

  • Use the same platform for the Oracle server and client.
  • Upgrade Oracle server to version 10.1.0.4.
  • Contact Oracle about bug 3417593 to install a patch for the Oracle server.

1.6. Using ODBC Database Connectivity on UNIX

PowerCenter 8.1 does not package DataDirect ODBC drivers for Oracle, IBM DB2, or Sybase ASE on a UNIX machine.
If you use DataDirect ODBC drivers packaged by PowerCenter to connect to Oracle, IBM DB2, or Sybase ASE from a UNIX machine, install database client software and configure native connectivity on the machine that runs the Integration Service. You can also use a third-party ODBC driver that is level 2 or above compliant.
For more details refer to the PowerCenter Post-Upgrade Reference Guide.


2. Services

2.1. When a server variable is changed the Data Integration Service must be re-started.

In previous versions server variables ($PMRootDir, $PMWorkflowLogDir, $PMCacheDir, etc.) could be changed and the server did not need to be re-started. Now in PowerCenter 8.1 it is necessary to re-start the the Integration Service after modifying these variables.

2.2. MaxSessions is replaced by MaxProcesses

The PowerCenter Server parameter MaxSessions has been replaced with the Integration Service parameter MaxProcesses. Now in PowerCenter 8.1 this value includes stand alone Command tasks. Depending on the number of stand alone Command tasks used a fewer number of Session tasks may be able to run concurrently in PowerCenter 8.1 than in previous versions.

2.3. Low precision decimal values are rounded.

Previously in 7.x, whenever we had a decimal in low precision that was originally a double, we guaranteed only the first 15 digits would be correct. The remaining digits would be whatever the OS returned to us.
Now in PowerCenter 8.1 this behavior has been corrected, the value is rounded and the remaining digits are now zeroed out.
Example:

7.x
8.1

123456580.901844999999980
123456580.90184500000000


2.4. ZoneAlarm firewall prevents you from logging in to the Administration Console

If the network is protected by a ZoneAlarm firewall that blocks third-party cookies, you may not be able to log in to the PowerCenter Administration Console.

Workaround: Disable the blocking of third-party cookies.


2.5. Command task error messages do not appear in the workflow log

The Integration Service writes error messages generated by the Command task to the Log Service as part of the domain log events. It does not write them to the workflow log.

Workaround: To view Command task error messages, view domain log events in the Log Viewer.


2.6. Repository Service processes in different domains can connect to the same repository database

The Administration Console does not prevent you from associating Repository Services in different PowerCenter domains with the same repository database. When two Repository Services access the same repository database, you may experience repository inconsistencies and object locking issues.

Workaround: If the PowerCenter environment includes multiple PowerCenter domains, ensure that a one-to-one relationship exists between Repository Services and repository databases across all domains. If two Repository Services are associated with the same repository database, disable all Repository Service processes for one of the Repository Services. Then, uniquely associate that Repository Service with a different repository database, or remove that Repository Service.


2.7. You cannot concurrently update service options and service process options for a single service

If you use the Administration Console or infacmd command line program to update options for the same service at the same time, only the last option saved is updated.

Workaround: Allow one command to complete before entering the next command.


2.8. Session fails after upgrade due to invalid lookup SQL override

Even though an SQL override is valid and works correctly in PowerCenter 7.1.1 or earlier, it fails in later releases in some instances, including the following cases:
  • It includes comments placed between /* */.
  • It contains a subquery.
  • It uses a Trim (BOTH FROM) command.

Workaround: For a simple SQL override, rewrite the SQL statement.
-or-
For other SQL overrides, configure the following custom property in the Administration Console for the Integration Service:

lookupOverrideParsingSetting=1


2.9. Cannot edit Web Services Hub properties on the Administration Console after upgrade from PowerCenter 8.1

After you upgrade to PowerCenter 8.1.1 SP3, the Web Services Hub does not have the following properties set:
  • SessionExpiryPeriod
  • MaxLMConnections

You cannot change these Web Services Hub properties in the Administration Console.
Workaround: Create Web Services Hub and configure the properties on the Administration Console. Alternatively, you can use the command line program infacmd to change the settings of the Web Services Hub properties. Use the -so option with the UpdateWSHubService command to configure the properties.


2.10. Cannot change Repository Service properties after upgrade

If a Repository Service does not have all the required properties after you upgrade to PowerCenter 8.1.1 (SP3), you cannot change the Repository Service properties in the Administration Console. For example, if a Repository Service does not have the DBPoolExpiryThreshold and DBPoolExpiryTimeout properties in PowerCenter 8.1.1 (SP3), you cannot use the Administration Console to modify the Repository Service properties, such as the operating mode.
Workaround: Use the infacmd UpdateRepositoryService command to add the missing properties to the Repository Service. For example, if the Repository Service lacks the DBPoolExpiryThreshold and DBPoolExpiryTimeout properties, use the -so option with the UpdateRepositoryService command to add the missing properties and their values. Then, you can use the Administration Console to modify the Repository Service properties. Alternatively, create a Repository Service that has all the required properties.

2.11. Nodes upgraded from PowerCenter 8.1 have different default values for some Load Balancer settings

If you created nodes using PowerCenter 8.1, and you upgrade from version 8.1 to version 8.1.1 (SP3), the upgraded nodes have the following default values for the “CPU Profile” and “Maximum Memory %” general properties:
  • CPU Profile = 10 (should be 1.0)
  • Maximum Memory % = 100% (should be 150%)

Workaround: If you use metric-based or adaptive dispatch mode, manually set “Maximum Memory %” to 150% or some other value. If you use adaptive dispatch mode, calculate the CPU profile for all nodes in the grid, or manually set the CPU profile for the upgraded nodes to 1.0.


2.12. Cache memory and DTM may not be optimized on session in upgraded repository.

Sessions in upgraded repositories have preset values for automatic memory settings that may not be optimal. For more details refer to KnowledgeBase article 20919.

2.13. Flat file target header column names can be specified at the session level now.

Starting with PowerCenter 8.1 a flat file target can be configured to include column names as the first row. For more details refer to KnowledgeBase article 13533.

2.14. Session on grid can run on backup node

A session can run on a backup node when it is configured to run on a grid. For more details refer to KnowledgeBase article 20000.

2.15. Certain repository operations must be done in "Exclusive mode"

The PowerCenter repository must first be set to Exclusive Mode before performing certain repository operations, such as backup and delete. For more details refer to KnowledgeBase article 18156.

2.16. Sessions fail while upgrading the incremental aggregation cache

When you use an incremental Aggregator cache file from a previous PowerCenter version in a session, the session fails while upgrading the cache to the current version.
Workaround: Rebuild the cache.

2.17. Sessions may fail with upgraded Advanced External Procedure transformations

Sessions with Custom transformations that were upgraded from Advanced External Procedure transformations fail if you used the following upgrade path:
1. You created the transformation in version 4.x and upgraded to version 7.0 or 7.1.
2. You upgrade the 7.0 or 7.1 repository to version 8.x.
These Custom transformations have an IsActive attribute set to false. The IsActive attribute should be true.
Workaround: Export the Custom transformation to an XML file. Change the IsActive attribute to true in the XML file and import the object from the XML file.


3. Command Line

3.1. The PmRepAgent command has been removed

The pmrepagent command no longer exists in PowerCenter 8.1 and now all repository commands have been consolidated into the pmrep command.
The following commands are now performed using the pmrep command line tool:
  • Connect
  • Showconnectioninfo
  • Deployfolder
  • Deploydeploymentgroup
  • Register
  • Unregister
  • Notify

For these commands to work the Repository Service must be running.
To restore a repository using pmrep: the user first has to create a repository service and enable it. This will start a PmRepAgent process even though the repository database has not been created yet.
Refer to the PowerCenter Upgrade Guide for more information.


3.2. Some Commands have been moved from pmrep to infasetup or infacmd.

The following commands are no longer performed using pmrep. They will be available in either the infasetup command line tool or infacmd.
  • Updatesrvvar
  • Updateserver
  • Deleteserver
  • Addserver
  • Addrepository
  • Removerepository
  • Stoprepository
  • Enablerepository
  • Disablerepository

3.3. New connection options for pmcmd

In the previous version pmcmd could work by specifying the host name/port number of any of the Servers in a Server Grid. This is no longer supported. If the Integration Service has more than one node in it, use the new –service -sv option instead.

3.4. New Load Manager behavior for pmcmd

In previous versions all worker Load Managers were accepting connections from the client applications. Now, in PowerCenter 8.1, when pmcmd connects to a worker Load Manager, it will redirect the connection to the master Load Manager by default. Two properties are available to change the behavior – WorkerAcceptsAllConnection and EnableConnectionRedirection. Refer to KnowledgeBase Article 15951 for more details.

3.5. The infasetup DefineDomain command does not support Windows authentication for SQL Server domain configuration databases

The infasetup DefineDomain command does not support the Microsoft SQL Server feature that allows you to log in to the database using your Windows user name and password. To define a domain that uses a Microsoft SQL Server domain configuration database, you must enter a valid database user name and password.

3.6. infasetup displays an error message if you omit the -databasepassword (-dp) option

If you omit the -databasepassword (-dp) option from an infasetup command that expects this option as a mandatory one, infasetup displays an error message. This prevents infasetup from obtaining the password from the INFA_DEFAULT_DATABASE_PASSWORD environment variable.

Workaround: Specify the domain configuration database password using the -dp option.



4. Client

4.1. Explicit Checkout

In previous versions of PowerCenter repository objects were implicitly checked-out (automatically checked-out when the object is edited). Now users have to explicitly check-out the objects and and there is no option to revert to the implicit check-out behavior.
When a repository user first opens an object it will be read-only and will require the user to check it out before it can be edited.

4.2. ALL: Creating or restoring a repository no longer adds the repository to the client tools Repository Navigator automatically.

After creating or restoring a repository in PowerCenter 8.1, you must Add the repository to the client tools.

4.3. ALL: Client needs Write Access to the client install directory

In previous versions, all client repository information was stored in the Windows Registry. In PowerCenter 8.1, while some information is still stored in the registry, the client now stores (and writes to) a file on disk called domains.infa. The client will store the domain_name/hostname/portnumber in this file. As a result, the client MUST have write-access to this file.


5. Expressions

5.1. DATE_DIFF function correctly calculates the difference in dates that include leap years. If you use the DATE_DIFF function to calculate the number of months or years between two dates, where one date is a leap year, the DATE_DIFF function returns a more accurate value for the number of months or years.

In previous releases, the DATE_DIFF function returned inaccurate values if one of the dates included a leap year. If you modified any expression to correct the error in months or years, you may want to update the expression. For more details refer to the PowerCenter Post-Upgrade Reference Guide.

5.2. Integration Service fails to match a lookup value using ROUND(TO_DECIMAL(string)) in a string lookup port expression in low precision mode

The upgrade process from versions prior to 6.1 replaces TO_INTEGER() with ROUND(TO_DECIMAL()). When you have ROUND(TO_DECIMAL()) in a lookup port with a String datatype, the Integration Service does not match the port value with a string integer value in the lookup cache or table in low precision mode.
For example, you have the following expression in a previous version of PowerCenter or PowerMart:

TO_INTEGER(‘5.18’)

The upgrade process changes this expression to:

ROUND(TO_DECIMAL(‘5.18’))

ROUND(TO_DECIMAL()) returns values as a Double with trailing zeros in low precision mode.
Workaround: Manually change expressions in string lookup ports of a Lookup transformation. Change ROUND(TO_DECIMAL()) to TO_INTEGER().

5.3. Change of ROUND function behavior

The behavior of the ROUND function has been reverted to PowerCenter 7.x.
If you are upgrading from 7.x then there will be no change in the behavior of expressions using the ROUND function.
If you are installing SP4 on top of PowerCenter 8.1.x versions ROUND behavior will change.
Example:
Round of zero (ROUND(0,2)) will return 0.00 and not 0.01.

Source: Informatica

3 comments:

dynamicdreamz said...

good

sanjay said...

Thanks
Good work.

Madjid said...

Hello,

Nice job.

I have some questions about Informatica 8.x, could you email me please at madjidh@hotmail.fr ?

Thanks a lot !!! :)

Best ergards,
Madjid