When the Oracle RDBMS attempts to link the Database Server instances with instances of TNS Listener, it performs a regular expression match of the Database SID and the TNS Listener SID. This SID may contain characters which have special meaning in regular expressions (e.g. '+').
In TKU July 2008 the pattern now escapes the special characters before it performs regular expression match.
In TKU February 2009 we added a configuration section which allows sudo support to be disabled (default) or enabled and allows the path to the sudo process to be user-defined (defaults to PRIV_RUNCMD). This same configuration section also allows pmap support to be disabled (default) or enabled and allows the path to the pmap process to be user-defined.
In TKU March 2009 we added 2 new functionalities to the Oracle RDBMS pattern.
The pattern is now able to retrieve Listening Port and Global Name for a give Oracle Sid, by using 2 possible methods. The relevant section contains exhaustive details on both methods.
Furthermore, the pattern is able to retrieve a list of Options which can be installed in the Database, and report on whether these options are actually Installed or not. This is particularly relevant for Licensing purposes. Please refer to the relevant page for further details.
In TKU April 2009 we added extra Simple Identifiers, and additional "related processes" links from the Database Server Software Instance.
In TKU May 2009 we enhanced the code able to retrieve the list of installed options by adding the ability to get the list from a file on both the Windows and UNIX platforms should the SQL Query fail or be unable to be executed for whatever reason.
In TKU June 2009 we added a new method to retrieve ora_home, which uses the Path of the TNS Listener associated with a specific SID. This method also allows the Pattern to recognize if it is acting in an E-Business Suite environment, in which case the pattern knows where to look for the listener.ora file, which will be located in a different directory.
In TKU July 2009 we added the ebs_suite attribute to the Oracle Database Server SI. This attribute is only added when we are dealing with on Oracle E-Business Suite Database, and will allow the E-Business Suite pattern to trigger, and subsequently model the appropriate SIs and BAIs.
We also added a Path Versioning method to the TNS Listener, and the ability for the Listener to retrieve the ora_sid in an E-Business Suite environment.
In TKU March 2010 we augmented the pattern's possibilities to extract ora_home. This was accomplished by interrogating the TNS Listener SoftwareInstance for that particular attribute.
We also added a Communication Relationship, modeled from the TNS Listener back to the Oracle Database Server
In TKU April 2010 four additional processes (Oracle shadow process, Oracle RAC Diagnosibility Daemon, Oracle Memory Manager and Oracle Database Automatic Workload Repository Statistics Gatherer Process) were added to the list of processes linked to the Software Instance via inference.associate() relationship.
In TKU May 2010 'ora_lmon' was added to the list of related processes and if found would lead to creation of 'clustered' attribute in SoftwareInstance; simplified greedy regex in listener section (bug #13113); fixed minor bugs: #13120, #13152 and #13204. Also the pattern's behavior was updated - now it populates "service_name" attribute, and if it is not found in tnsnames.ora file when global_name is known - the pattern will assign the value of global_name to service_name (bug #13021).
In TKU June 2010 the Database Server pattern no longer includes ora_home as part of the SI key as this could lead to instability in the model produced and duplicate SIs being created. ora_home is obtained in a number of ways and may not always be obtained on a first scan. Re-arranged also the order the pattern attempts to obtain ora_home.
Additionally, an inconsistency where the port attribute could be set as either integer or string was removed. The port attribute is always set to string.
In TKU July 2010 the Oracle Database Server and Oracle Database Server Express (UNIX) patterns were updated with improved code to parse oratab files to retrieve the installation path (oracle_home) of the database instance. The new regular expression deals with oratab lines which have more columns than normally seen in an oratab file.
In TKU August 2010 two changes were made:
In TKU September 2010 the Oracle RDBMS and Oracle Database Express patterns were updated to further improve parsing of the oratab file.
Furthermore, the TNS Listener pattern was updated to improve parsing of tnsnames.ora file in order to prevent the pattern exiting with an ECA Engine error when characters such as '+' were encountered as part of the service name.
In TKU December 2010 the Oracle RDBMS pattern was updated that parsing of the XML file containing edition information is now optionally performed with elevated privileges.
In TKU April 2011 the Oracle RDBMS Installed Options pattern module was modified. It now detects the Data Mining installed options via a database query. The key of any detailed node created was changed from row, DB SI key and host key to row and DB SI key. The detailed nodes also now age out correctly.
In TKU May 2011 the Oracle RDBMS Installed Options pattern module was modified. For ADDM 8.2 onwards, privileged cat commands are now always executed regardless of the state of the UNIX privilege execution flag (now removed as redundant) in the configuration section and instead of 'cat' command.
In TKU October 2011:
In TKU November 2011, a minor update to the Oracle Database Server pattern was made to determine if the version obtained using active command approach is likely to be correct and also to map the version obtained on Oracle 7 installations to that version of the product
In TKU March 2012 the DatabaseServer pattern now attempts to extract the latest edition when multiple context.xml files are to be found on the UNIX platform.
In TKU April 2012 the DatabaseServer pattern was updated in the following ways:
The TNSListener pattern was updated in the following ways:
In TKU May 2012 the following updates were made:
In TKU June 2012 the following updates were made:
In TKU July 2012 the following updates were made:
In TKU August 2012 the following changes were made:
In TKU September 2012 In order to represent architecture of homogenous distributed database system, which is a network of two or more Oracle Databases that reside on one or more machines, the pattern creates a client-server communication link between Oracle SIs which form such system.
In TKU November 2012 the following changes were made:
TNSListener pattern - Improved method for listener.ora file path identification when it is located in non-standard directory
DatabaseServer pattern - code for search of Oracle SI by net_service_name is replaced with common RDBMS function.
In TKU December 2012 the pattern has had a minor update to ensure mapping of certain attributes to Atrium CMDB BMC_Product CI matches Atrium Product Catalog Data (as published by BMC)
In TKU February 2013 the regular expression used to obtain hostname in resolve_named_address function was slightly improved
In TKU March 2013 the case for IPv6 wildcard address was added in resolve_named_address function.
Added additional path candidate to context.xml file for Oracle RDBMS 9.
In TKU May 2013:
In TKU July 2013 'PRIV_RUNCMD ls' was replaced with 'PRIV_LS' in execute_priv_grep_cmds() function. We also added some extra comments were added to the pattern configuration section to make it clear pmap_enabled will only work in priv_execution is enabled.
In TKU September 2013 the following changes were made:
In TKU October 2013 the Oracle RDBMS extended discovery pattern module was modified to reduce transaction size by splitting two patterns into four.
In November TKU the following changes were made:
In December TKU the following changes were made:
In TKU March 2014 path versioning method and versioning based on "Component21" subdirectory were combined.
In TKU April 2014 extraction of RAC host nodes was added to DatabaseServer pattern.
In TKU May 2014 fixed ECA error caused by absent cmdline attribute in DiscoveredService node and added new configuration option to exclude schema names based on substring.
In TKU May 2014 :
2014-06-03 - switched order of sql queries for better support of Oracle 12c - query with service name is tried first now (QM001822230)
In TKU July 2014:
The J2EEInferredModel and RDBMS_Functions patterns were enhanced to support new·syntax of the JDBC connection. The SID and service name are now extracted correctly (QM001829931).
Enhanced OracleRDBMS_DBDetails pattern to support Oracle 12c Pluggable Databases (PDBs). PDBs are modelled as DatabaseDetails (QM001822230).
Starting from TKU August 2014, the Oracle RDBMS Installed Options pattern now identifies and creates the following options:
In TKU November 2014, the following patterns were updated:
In TKU Dec 2014 the pattern was updated to handle the following situation: "User doesn't have enough privilege to perform the operation". Privileged execution of crs_stat -v is now performed where user doesn't have enough privilege to perform such operation (QM001866327).
In TKU April 2015 the pattern was updated with the following changes:
In TKU May 2015 the pattern was updated with the following changes:
In TKU October 2015 the pattern was updated with the following changes:
In TKU November 2015 the pattern was updated to not trigger windows process with +ASM in arguments (QM001889967)
In TKU January 2016 the pattern was updated with the following changes:
In TKU February 2016 the pattern was updated with the following changes:
In TKU March 2016 support was added for detecting Oracle Multitenant on version 12.
Inqueries to Oracle DB were updated (DRDC1-4759)
In TKU July 2016 pattern trigger was updated, list of custom locations to Oracle Installer location file added to configuration options, enhanced global_db_name extraction.
In TKU August 2016 getPatches () function was updated with privileged execution option(DRDC1-6577).
In TKU September 2016 pattern was updated with discovery.access() approach which will be used only for BMC Discovery v 11.0+ (DRDC1-6708).
Hosting cluster node is looked up by db_unique_name instead of full global_db_name (Esc: 093353)
Changed <instance> for DatabaseDetail for clustered Oracle SI (Esc: 093353).
In TKU October 2016 updated query was added to Option/Pack extraction for Oracle version 11.1 and below.
In TKU July 2017 Added code that prevents link SI to itself (DRDC1-9174)
In TKU August 2017 Added condition and modified command for HP-UX that prevents command freezing (DRDC1-9493)
In TKU Sep 2017 :
- added listen ip address to arguments of cluster_support_functions.getHostingNode fucntion,
- ips can be used as evidence for clustered Oracle SI identification(DRDC1-9423)
- added configuration option for oracle patch extraction because 'opatch lsinventory' can hang on and create core dumps if it is run by user with insufficient permissions.(DRDC1-9839)
- create link between Listener and Cluster based on listening IPs (DRDC1-9423)
- added secondary method for served_oracle_instances identification based on listener name
In TKU December 2017 :
In TKU July 2018 service_names extraction was updated. (DRDC1-10989)
In TKU January 2019 Path versioning was updated, pattern will now try to use additional service names for SQL discovery, success_login_cred value changed to success_login_credential.
In TKU April 2019 the following changes were made:
In TKU May 2019 the following changes were made:
In TKU October 2019 the following changes were made:
In TKU November 2019 the following changes were made:
In TKU December 2019 the following changes were made:
In TKU January 2020 pattern was updated to always use local SID as instance for standalone databases.
In TKU July 2020 the following changes were made: