Patch-ID# 118985-08

NOTE:
***********************************************************************
READ THE TERMS OF THE AGREEMENT ("AGREEMENT") IN THE LEGAL_LICENSE.TXT
FILE CAREFULLY BEFORE USING THIS SOFTWARE. BY USING THE SOFTWARE, YOU
AGREE TO THE TERMS OF THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE
TERMS, PROMPTLY DESTROY THE UNUSED SOFTWARE.
***********************************************************************

Keywords: esm enterprise storage manager advanced applications
Synopsis: Sun StorEdge ESM 3.0.1 Advanced Applications Patch
Date: Aug/02/2005


Install Requirements: None                      
                      
Solaris Release: 8 9

SunOS Release: 5.8 5.9

Unbundled Product: StorEdge ESM Advanced Applications

Unbundled Release: 3.0.1

Xref: 

Topic: 

Relevant Architectures: sparc
NOTE:
This patch does not address or correct issues pertaining to a 
standard SVR4 package.  Therefore:
  1)  This patch is NOT installed via /usr/sbin/patchadd nor 
      removed via /usr/sbin/patchrm.
  2)  This patch will NOT be reflected in the Solaris patch 
      database or in /var/sadm/patch.
  3)  This patch will NOT be searchable or traceable via 
      /usr/bin/showrev.
Complete installation instructions are found below.

BugId's fixed with this patch: 

Changes incorporated in this version: 

Patches accumulated and obsoleted by this patch: 

Patches which conflict with this patch: 

Patches required with this patch: 

Obsoleted by: 

Files included with this patch: 

README.118985-08
SP_3_6_1_8.bin

Problem Description:

Issues corrected in this patch --
 
12094 - MPXIO + DMP on Solaris
Problem: Now that MPxIO is widely available, customers with VxVM and DMP are not using DMP for multipathing - they are using MPxIO, but still have DMP installed. Information for both MP systems are displayed, but the provider does not associate the multipathing meta devices with the correct partitions, so we do not stitch. 
Symptom: (In Problem)
Solution: Fix is for DMP disks that have their multipathing being done by MPxIO, don't create a meta device for the DMP disk. Instead, make the association from the VxvmDiskPartition to the MPxIO meta device. Make the name of the MPxIO meta device a concatenated string of <DMP device + MPxIO device >, so the user can understand how the VxVM partition connects to MPxIO. 
 
11942 - Deadlock if reconnect is needed during a GAED
Problem: If brocade provider needs to reconnect to brocade fabrics while GAED is in progress, a deadlock may result.
Symptom: GAED never completes.
Solution: The deadlock results from the interaction of brocade reconnect logic, streaming, and the synchronizer logic.  The solution is to disable streaming for the APPIQ_BrocadeSwitch class.
 
10997 - Use of Default Discovery Credentials
Problem: Default discovery credentials in step 1 of discovery is not working 
Symptom: From Discovery Step 1, add a discovery addresses without username and password (leave them blank). Set a default username and password and attempt discovery.  Discovery will fail, even if the default credentials are correct.
Solution: In the DiscoveryAddressesCommand, when we add or edit a discovery address, if the username comes back from the UI as being empty then we set it to null.  Setting the username to null tells the service layer it needs to try the default usernames and password.
 
NO ID - Engenio 6998 Controller support 
Problem: This fix is to add support for the new 6998 controller for Engenio arrays.  Code name was XBB.  Also, support for the DS4500.
Symptom: We display 'firmware not supported' message when we have not incorporated the SYMbol SDK into our product that matches the firmware on the array.   Any new Engenio controller requires a new SYMbol SDK to go with the new firmware.  This is release 9.1.2 and 9.1.4 of the SDK.
Solution: Include support for the new SYMbol SDK?s ? version 9.1.2 and 0.1.4.  This is done by adding reference to the new SDK class names.  Java reflection is used to use the correct SDK class names.  The code change is minor ? just let the reflection classes know of the new class names.  Also, the CIM Extensions are updated to support the following new Vendors and Product Ids.
 
11531 - Host Use of SAN Storage Details report Hangs 
Problem: Host Use of SAN Storage Details report hangs.
Symptom: Running Host Use of SAN Storage Details report will hang and may result in ORA-600 error.
Solution: Fixed the SQL query for Host Use of SAN Storage Details report. Affected file are \\reports\system\host\host.cat
 
11596 - Cannot discover Oracle Applications with underscores in the SID name. 
Problem: Oracle Application with underscore in the SID name can not be discovered.
Symptom: Oracle Application with underscore in the SID name can not be discovered.
Solution: Fixed the tnsping of oracle application by fixing the instance name filter in the code.
 
NO ID - SP7 Regression SAN Storage Details and SAN Storage summary return no data.
Problem: After applying SP7 patch Host Use of SAN Storage Summary and Host Use of SAN Storage Details report returns no data.
Symptom: Running SAN Storage Details and SAN storage summary report will return no data and the log file will show ORA-00904: "FREE": invalid identifier.
Solution: Fixed the view synonym grant in SP7 script . Affected files are db361sp7.sql and runPatch361sp7.pl
 
NO ID - XP12000 support (read only)
Problem: Read only support is being added for XP12000 array in 3.6.1.  The support already exists in the release versions 3.7 onwards.
Symptom: There is no support for XP12000. If an XP12000 array was discovered, array information (especially LUN and LUN masking information) will not be synced appropriately. There may be multiple errors occurring in the Get All Element Details process or Host Security Group, LUN, or LUN masking information may be missing.
Solution: To solve this problem, XP12000 is simply added to the supported models list. During a Get All Element Details, we now log a message in the cimom.log when we detect an unsupported model. This will help in diagnosing errors.
 
 
Issues corrected in prior verions of patch --
11082 - A problem in Reader/Writer lock implementation may cause indefinite waits
Problem: A problem in Reader/Writer lock implementation may cause cimom to get into a state where it can no longer service requests for a given switch or storage system type until the service is restarted.
Symptom: GAED never completes.
Solution: There was a problem where internal state of a reader/writer lock could indicate that the lock is in a locked state, while in fact there was no thread holding the lock.  Reader/writer lock implementation was fixed to accurately keep track of whether the lock is beeing held.
 
11151 - An EMC API call needs to be synchronized externally
Problem: There is an issue with one of EMC API calls that may cause it to fail when called from two or more threads at the same time.
Symptom: "Updating provider caches" phase of "Get All Element Details" takes a long time and every 30 minutes the message "Error updating provider cache for access point: " is logged.
Solution: Serialize all calls to the problematic API.
 
9913 - CNT Invalid Fabric Problem on FC9000 Switches
Problem: When a CNT FC9000 switch is not the primary switch in a fabric, the SnmpSwitch provider reports an invalid FabricId (WWN) for this switch.  This isolates the switch into a separate fabric with an invalid fabric name.  ISL links to other switches are not displayed.
Symptom: FC9000 switch is listed in a separate fabric in System Explorer.  ISL links are missing.
Solution: The solution to this problem is to fix the SnmpSwitch provider to return the correct fabric id for FC9000 switches that are not the primary switch in the fabric.  The provider is retrieving the fabric id from an SNMP OID that the FC9000 switch does not populate.  The solution is to get the information from a different place in the MIB.
 
10451 - Linux - Local vs. External with long LVM volume names
Problem: On Linux in few cases Logical Volumes mounted on ?External Disks? are displays as mounted on "Local Disks".
Symptom: When a  logical voume or a volume group with a very long name is created the "External" drives are shown as "Local" in the "Storage Volumes" page of host navigation.
Solution: When a logical volume/volume group with a very long name is created, the pvdisplay command reports extent information across two lines instead of one. This situation was not handled properly. This requires the changes to the LVM parser in "LinuxLvmCache.java" file.
 
11009 - Storage Array missing under System-Storage system reports
Problem: Storage Array missing in system -> storage system reports
Symptom: Storage Array missing in system -> storage system reports will not show the entire storage array.
Solution: Fixed the MV_TEMPSTORSYSTEMSUMMARYVW and MV_STORAGESYSTEMCAPSUMMARYVW views Modified SS_Pool_Details.cls, storage.cat, storage.fml, SS_Details.cls report files. Modified the reinit.pl script to run this fix  during schema reinitialization.
 
10473 - Virtual Apps Property Page Null Pointer Exception
Problem: Virtual App will have volumes that no longer exist on host.
Symptom: Properties tab for Virtual Apps gives Null Pointer Exception (NPE). This is because these virtual apps refer to volumes that no longer exist on the host.
Solution: Clean up the orphan record (volumes that no longer exists) from Virtual Apps. Added cascade delete  trigger that will delete the Virtual Apps volumes when the volumes are deleted.  Modified the reinit.pl script to run this fix  during schema reinitialization.
 
10786 - Virtual Apps Utilization Report Fix
Problem: Errors in Capacity reported for virtual application, Application by Utilization Report.
Symptom: Application by Utilization Report for Virtual Application shows wrong capacity for the virtual applications configured on the host across different drives.
Solution: Fixed the SQL query for  Virtual Application By Utilization report. Affected file are application\storage.cat, application\storage.fml, and Top_Ten_Applications.cls
 
10389 - Report Cache Refresh Fails
Problem: Cimom or proxy connections to Windows hosts via WMI have a fixed timeout value of 15 seconds.  In some cases, this has been observed to be too short.
Symptom: WMI timeout exception arises
Solution: Increased the default timeout value to 45 seconds, and provided the wmi.timeout system property to allow field adjustment if necessary.
 
9890 - AppIQ Trap MIB and Trap Generation Code Fix
Problem: The software generates traps based on events from the Event Manager.  These traps are defined in a MIB file called AppIQ-Traps.MIB.  The traps that are generated cannot properly be decoded by some trap receivers because not all of the defined fields in the traps are being populated.
Symptom: Trap receivers do not show any of the trap details.
Solution:  The code was modified to populate all of the remaining field.
 
10008 - McDATA SWAPI Provider remote process dies
Problem: The McDATA SWAPI Provider starts up a remote process for each EFCM it needs to communicate with.  On a Solaris Server with dual NICs communicating to an EFCM on a Solaris server with dual NICs, the remote process dies during provisioning operations.
Symptom: Whenever a provisioning operation is attempted on McDATA switches, the operation fails and the user gets a dialog box that states that the Zone Service could not be found because the fabric is not valid.
Solution: The solution involves converting a SWAPIexception into a CIMException.  This conversion was not being done correctly, and the remote process could not handle the resulting exception and died.
As part of the fix for this problem, additional logging was put into the application to receive error messages from the remote process and log them in the cimom.log to more easily detect and fix any remote process errors in the future.
 
10389 - Report Cache Refresh Fails
Problem: Report Cache Refresh fails or takes long time.
Symptom: Report Cache Refresh will not complete successfully.The temp tablespace will grow very large and hit 32 GB OS file limit. The Report refresh will fail with an error 'unable to extend temp segement' or start seeing process out of memory error.
Solution: Tuned various views which were creating a problem due to sorting.  This controls the temp space growth by removing the sort and speed up the report refresh time. Modified the reinit.pl script to run this fix  during schema reinitialization.
 
9937 - Event flood during statistics collection
Problem:  Numerous similar events being generated due to errors while collecting statistical data from a device. This would clean up the event manager and facilitate troubleshooting.
Symptom: When a collector is running to collect statistical data, if a specific collection attempt fails, say due to an unreachable device, then a series of events show up in the event manager showing the same failure.
Solution: The solution to this issue was to trap any exception that was thrown during data collection and not create and send an event to the event service. Earlier we were creating a new event every time a data collection error/exception occurred.
 
6391 - McData zoning UI - differentiate between active and inactive zones
Problem: The zoning database for McDATA is kept on the EFCM server rather than on the individual switches.  When a zone set is activated in a McDATA fabric, the EFCM keeps a copy of the zone set, zones, and zone members in the inactive zone database.  This creates confusion in the UI since it is not easy to tell which zones are active and inactive and causes problems during provisioning.
Symptom: In the zone list for a McDATA switch, some zones will be listed twice.  One is the active zone and one is an inactive copy.  There is no way to tell which is which without clicking on each zone one at a time to look at the zone details page.  In addition, if the inactive zone is edited, the two zones can have different contents but still have the same name.
Solution: The Zones table in the Navigation and Provisioning will have an additional read only column that will show if a zone is active or not. The add/edit zones to a zone set wizard in provisioning was modified such that the names of the active zones are followed by the text (Active).  Note that active zones were already filtered IF there is an inactive zone with the same name.
 
9864 - McData SWAPI throttle
Problem: The McDATA SWAPI connection to the EFCM can send SWAPI requests faster than EFCM can handle them.  This can cause SWAPI errors, leading to repeated disconnect and reconnect events.  The result is incomplete or erroneous syncs and failed provisioning operations.
Sympton: The Event Manager will show multiple SWAPI disconnect and SWAPI reconnect events.  Provisioning operations will fail with error messages stating that the zone service on the fabric is invalid.
Solution: Introduce a throttle on the SWAPI traffic.  A new property in jboss.properties will be added, called cimom.mcData.swapiThrottle.  This property is the time in milliseconds that the application will delay between the completion of one SWAPI call and the start of the next SWAPI call.  Value range is 0-1000 milliseconds; default of 200.  The McDATA SWAPI provider will use this value to pause between each SWAPI call.  This pause will be independent for each EFCM connection.  The throttle will ensure that EFCM has time to process all SWAPI calls without getting overloaded.
 
9648 - Handle Clariion LUNs greater than 999
Problem: Clariion LUNs greater then 999 are missing after running Get All Element Details
Symptom: Navigation pages for Clariion storage systems do not show any LUNs greater then 999
Solution: Clariion LUN information is obtained by parsing NaviCLI output using regular expressions.  Before this fix, the regular expression for LUN number would accept only one-, two-, or three-digit numbers.  The regular expression was modified to accept any number of digits.
 
9255 - JVM upgrade
Problem: Several bugs are caused by having the 1.4.1 version of the Java virtual machine (JVM) installed with StorageAuthority.  These bugs are fixed in version 1.4.2_05 and later of the JVM.
Symptom: On Solaris the StorageAuthority server will restart during synchronization.  Memory leaks cause the JVM and therefore the StorageAuthority server to crash.  Other miscellaneous JVM bugs.
Solution: The solution is to upgrade to version 1.4.2 of the JVM on both Windows and Solaris.  We will be using 1.4.2_06 on Windows and 1.4.2_07 on Solaris.
 
9913 - CNT fabric ISL problem
Problem: When a CNT FC9000 switch is not the primary switch in a fabric, the SnmpSwitch provider reports an invalid FabricId (WWN) for this switch.  This isolates the switch into a separate fabric with an invalid fabric name.  ISL links to other switches are not displayed.
Symptom: FC9000 switch is listed in a separate fabric in System Explorer.  ISL links are missing.
Solution: Fix the SnmpSwitch provider to return the correct fabric id for FC9000 switches that are not the primary switch in the fabric.  The provider is retrieving the fabric id from an SNMP OID that the FC9000 switch does not populate.  The solution is to get the information from a different place in the MIB.
 
7741 - Truncated report names in enterprise reporting
Problem: Global reports site names are truncated after 6 characters.  
Symptom: While configuring the Global reports, we can provide site names with the maximum length of 32 characters. While showing the data in reports, the site names are truncated after 6 characters.
Solution: In the Global reports catalog file changed the site name precision to 256 characters.
 
9168 - Support for CNT UMD switch
Problem: Need to support CNT UltraNetR Multi-service Director (UMD) switches.
Symptom: Support for CNT switches is accomplished in HSSM through the SnmpSwitchProvider. The UMD switch supports multiple logical domains.  Because of this, the SNMP tables for the UMD are indexed differently than the SNMP table for all other CNT switches.  In addition, there is a CNT proprietary MIB that is not used by other CNT switches.  These things cause discovery to fail for UMD switches. 
Solution: Add additional code to the discovery portion of the SnmpSwitch provider to discover UMD switches.  Also, new code will be added to the provider to gather information from the SNMP tables of the UMD switch correctly.
 
9121 - McData Fabric ID reporting
Problem: McDATA switches discovered through EFCM using SNMP are sometimes showing the wrong FabricId.
Symptom: When the incorrect FabricId is reported for a switch, the System Explorer shows the switch in the wrong fabric.  This affects the topology view, path view, and reports.
Solution: The CLI will report the incorrect FabricId.  When getting SNMP information about a switch from EFCM, the FabricId of the switch is not reported directly.  The EFCM only tells whether the switch is the primary switch in the fabric or not.  If the switch is the primary switch, the FabricId is the WWN of the switch itself. If the switch is not the primary switch in the fabric, it is necessary to follow all ISL links from the switch to other switches in the fabric, and determine if any of them is the primary switch.  This process is followed until the primary switch is found.
 
9131 - Removing a LUN initiator
Problem: This fix is for Remove Initiator.  This command is found in the provisioning UI, luns tab, when a lun is deleted.  In the dialog that displays, removing a LUN Initiator (in a Host Group that has more than one initiator) removes all the initiators from the Host Group.
Symptom: If the user has more than one initiator for a host group, removing any one initiator will delete all of the initiator?s in the host group.  This is in addition to the one the user requested to be deleted.
Solution: Delete the host and host group, only if no other initiators are associated with them.  
1. delete host if there are no more host ports in that host.
2. delete the host group if there are no more hosts in that host group
 
9159 - Replication of Symmetrix RAID 5 volumes and pools
Problem: Symmetrix DMX systems with Enginuity 5670+ do not show RAID 5 pools and volumes. 
Symptom: The storage pool and storage volume navigation pages for Symmetrix DMX systems with Enginuity 5670+ do not show any pools or volumes that have RAID 5 raid level.
Solution: The problem occurred during the transition from EMC WideSky libraries version 5.1 to version 5.3.  RAID 5 is new in WideSky 5.3.  The code to support RAID 5 should have been added to Storage Authority during the transition, but this was never done.  This patch adds the necessary code to handle RAID 5.
 
9331 - Upgrading from SA 3.5 to ESM 3.0/3.0.1 does not run PopulateMappingData.sql
Problem: Seed data changed but was not included as part of the upgrade when it needed to be.  As a result, APPIQ_SnmpSwitchRemoteComputerSystem and APPIQ_SnmpSwitchRemotePort objects are replicated.
Symptom: Discover and sync QLogic and/or CNT switches.  RemoteConputerSystems will appear in the System Explorer.
Solution: Created a script which reruns the PopulateMappingData.sql file and create all the missing seed data. The script cleans up the database for any APPIQ_SnmpSwitchRemoteComputerSystem, APPIQ_SnmpSwitchRemotePort object replicated before running the patch.

Patch Installation Instructions:
----------------------------- 
1) Navigate to the directory where the Sun StorEdge Operations Manager is installed.
2) Set file permissions on install/setvars.sh to EXECUTE, and execute that script.
3) Execute /etc/init.d/appstormanager stop
4) Navigate to the directory where you unzipped this patch, and execute 118985-08/SP_3_6_1_8.bin
5) Follow the resulting on-screen patch installation instructions.
6) Execute /etc/init.d/appstormanager start
 
Special Installation Notes:
Either the "-i silent" or "-i console" switch may be used if needed.
 
Version Notes:
Navigate to the directory where the Sun StorEdge Operations Manager is installed.
The file Version.txt contains the version string for the product.
	Base version string: 3.6.1.42
	After patching: SP_3.6.1_n  (where "n" is the revision number of the patch)

Special Install Instructions:
---------------------------------

None.

README -- Last modified date:  Tuesday, August 2, 2005

