Oracle Database - Change History
See updates in 2008-2010 years
2008
TKU July 2008
Updated the pattern to escape special characters (for example, +) before it runs a regular expression to match the Database SID and the TNS Listener SID.
2009
TKU February 2009
Added a configuration section that allows the following:
- sudo support to be disabled (default) or enabled.
- The path to the sudo process to be user-defined (by default, PRIV_RUNCMD).
- pmap support to be disabled (default) or enabled.
- The path to the pmap process to be user-defined.
TKU March 2009
The following improvements were made:
- Updated the pattern to retrieve a listening_port and global_name for an Oracle Sid.
- Updated the pattern to retrieve a list of Options that can be installed in the Database and added reporting on these Options. This is used for licensing purposes.
TKU April 2009
Added extra Simple Identifiers and related process links from the Database Server Software Instance.
TKU May 2009
Updated the pattern to retrieve a list of Installed Options for Windows and UNIX platforms.
TKU June 2009
Added an extra method to retrieve ora_home. This method also enables the pattern to recognize whether it is acting in an E-Bsuiness Suite environment.
TKU July 2009
The following improvements were made:
- Added the ebs_suite attribute to the Oracle Database Server SI.
- Added a path versioning method to the TNS Listener.
- Added the ability for the Listener to retrieve ora_sid in an E-Business Suite environment.
2010
TKU March 2010
The following improvements were made:
- Updated pattern's ability to extract ora_home.
- Added a Communication Relationship, modeled from the TNS Listener back to the Oracle Database Server.
TKU April 2010
Updated the list of processes linked to the Software Instance through the inference.associate() relationship as follows:
- Oracle shadow process.
- Oracle RAC Diagnosibility Daemon.
- Oracle Memory Manager.
- Oracle Database Automatic Workload Repository Statistics Gatherer Process.
TKU May 2010
The following improvements were made:
- Added ora_lmon to the list of related processes; if found, the clustered attribute is created in the SoftwareInstance.
- Simplified the regex in the listener section.
- Updated the pattern to populate the service_name attribute.
- Fixed minor bugs.
TKU June 2010
The following improvements were made:
- Updated the way in which the pattern attempts to obtain ora_home.
- Set the port attribute to string.
TKU July 2010
Improved oratab files parsing to retrieve the installation path (oracle_home) of the database instance.
TKU August 2010
The following improvements were made:
- Improved how eBusiness instances are handled by the TNS Listener pattern; instance names of APPS_X and X are now treated as separate instances.
- Updated how the Oracle Database Software Instance obtains the ora_home variable from a related TNS Listener Software Instance.
TKU September 2010
The following improvements were made:
- Updated oratab file parsing for the Oracle RDBMS and Oracle Database Express patterns.
- Updated the TNS Listener pattern to improve tnsnames.ora file parsing. This will prevent an ECA Engine error when characters such as + are part of the service name.
TKU December 2010
Updated the Oracle RDBMS pattern so that parsing of the .xml file containing edition information is now optionally performed with elevated privileges.
See updates in 2011-2013 years
2011
TKU April 2011
The following improvements were made:
- Modified the Oracle RDBMS Installed Options pattern module. It now detects the Data Mining installed Options through a database query.
- Changed the key of any Detail node from row, DB SI key, and host key to row and DB SI key.
- Improved Detail node aging.
TKU May 2011
Updated the Oracle RDBMS Installed Options pattern module to execute privileged cat commands regardless of the state of the UNIX privilege execution flag (now removed as redundant).
TKU September 2011
The following improvements were made:
- Added support for obtaining the address_names attribute from the tnslistener.ora file.
- For the TNS Listener pattern, improved the UNIX path regex to increase versioning coverage.
TKU October 2011
The following improvements were made:
- Updated how the pattern obtains the address_names attribute.
- Added case insensitivity to regex used for extracting information such as port and matching hosts from the listener file.
TKU November 2011
Updated versioning for the Oracle Database Server pattern.
2012
TKU February 2012
Improved the regular expression used to obtain the service name.
TKU March 2012
Updated the DatabaseServer pattern to attempt to extract the latest edition when multiple context.xml files are to be found on the UNIX platform.
TKU April 2012
For the DatabaseServer pattern, the following improvements were made:
- Improved methods of obtaining ora_home; improved active and registry versioning methods.
- Enhanced the method of obtaining db_unique_name and service_name from spfile.ora or init.ora.
- Populated listen_tcp_sockets, listen_ips, and listen_ports attributes from related TNS Listener SIs.
- Added extra paths to the context.xml file.
For the TNSListener pattern, the following improvements were made:
- Enhanced the method of obtaining listener_name.
- Added an active command for obtaining a version and listening addresses.
- Updated the method of reading listening addresses.
- Added a configuration section for custom paths to the listener.ora files.
TKU May 2012
The following improvements were made:
- For the DatabaseServer pattern, enhanced the regex for obtaining ora_home from the Windows service.
- For the TNSListener pattern, enhanced parsing of the listener.ora file.
TKU June 2012
The following improvements were made:
- Added enhanced support for Oracle RAC.
- Resolved an issue with overwriting the ora_home variable.
- Added a product_si attribute (a combination of type and edition) to improve CMDB mapping.
TKU July 2012
The following improvements were made:
- Added support for IPv6.
- Added support for the Xenolith Network Model.
- Added a check whether the IP from the obtained socket belongs to the current Host.
- Added a net_service_names attribute.
- Added sid_to_service_map extraction from the SID_LIST_<LISTENER_NAME> section of the listener.ora file.
- Updated the method of reading listening addresses.
TKU August 2012
The following improvements were made:
- Added bytes, maxbytes, and user_bytes attributes.
- Resolved an issue with the product_version identification.
TKU September 2012
Updated the pattern to create a client-server communication link between Oracle SIs.
TKU November 2012
The following improvements were made:
- For the TNSListener pattern, improved the method of the listener.ora file path identification when it is located in a non-standard directory.
- For the DatabaseServer pattern, replaced the code for Oracle SI search by net_service_name with a common RDBMS function.
TKU December 2012
Updated attributes mapping.
2013
TKU February 2013
Improved the regular expression used to obtain hostname in the resolve_named_address function.
TKU March 2013
The following improvements were made:
- Added the case for the IPv6 wildcard address in the resolve_named_address function.
- Added an extra path candidate to the context.xml file for Oracle RDBMS 9.
TKU May 2013
The following improvements were made:
- Improved the regular expression used to obtain the UNIX path version.
- Improved parsing of the context.xml file to obtain edition information.
TKU July 2013
The following improvements were made:
- In the execute_priv_grep_cmds() function, replaced PRIV_RUNCMD ls with PRIV_LS.
- Updated the pattern configuration section so that pmap_enabled works only if priv_execution is enabled.
TKU September 2013
For the DatabaseServer 2.20 pattern, the following improvements were made:
- Updated the regular expression used to obtain the UNIX path version.
- Updated the versioning method for Oracle 7.
- (UNIX) Updated the edition extraction method for Oracle 11.1 and earlier versions.
- (UNIX, Windows) Added a new edition extraction method for Oracle 11.2 and later versions.
- Moved the Windows edition extraction method from the registry to function.
- Added a new command versioning method.
- Added a _data_guard_role attribute to the management code.
For the TNSListener pattern, the following improvements were made:
- Updated the regular expression used to obtain the UNIX path version.
- Added ora_home to the key.
For the DatabaseServerExpressUnix pattern, resolved an issue with the product_version identification.
TKU October 2013
Reduced the transaction size of the Oracle RDBMS pattern.
TKU November 2013
The following improvements were made:
- Updated the trigger and versioning methods to support Oracle Express Edition on UNIX platforms.
- Moved some parts of the code to the function section.
- Improved the method of ora_home extraction from the oratab file for clustered systems.
- Added support for multiple service_names.
- Replaced the db_unique_name attribute with the global_db_name attribute.
- Added a new method of global_db_name and service_names extraction by using the srvctl command.
TKU December 2013
The following improvements were made:
- Moved the code for the creation of linked Oracle SI to the linked_oracle_instances() function.
- Enhanced support for additional formats of SQL query output in the linked_oracle_instances() function.
See updates in 2014-2015 years
2014
TKU March 2014
Combined the path versioning method and versioning based on the Component21 subdirectory.
TKU April 2014
Added extraction of RAC host nodes for the DatabaseServer pattern.
TKU May 2014
The following improvements were made:
- Fixed an ECA error related to the absent cmdline attribute in the DiscoveredService node.
- Added a configuration option to exclude schema names based on substring.
TKU June 2014
Improved SQL queries in the sql_versioning function for Oracle 12c so that a service name is tried first (QM001822230).
TKU July 2014
The following improvements were made:
- The Oracle RDBMS Installed Options pattern now identifies and creates the following options:
- Advanced Security (Transparent Data Encryption).
- Spacial.
- Real Application Testing.
- Improved naming of the Oracle RAC SI located on a single host (QM001851127).
- Enhanced the J2EEInferredModel and RDBMS_Functions patterns to support the new syntax of the JDBC connection. The SID and service name are now extracted correctly (QM001829931).
- Enhanced the OracleRDBMS_DBDetails pattern to support Oracle 12c Pluggable Databases (PDBs). PDBs are modeled as DatabaseDetails (QM001822230).
TKU August 2014
The Oracle RDBMS Installed Options pattern now identifies and creates the following options:
- Oracle Database Vault.
- Oracle Label Security.
- Advanced Analytics.
- Advanced Compression.
- Active Data Guard.
TKU November 2014
The following improvements were made:
- For the Oracle RDBMS pattern, changed the process (which indicates a clustered Oracle instance) from ora_lmon_<sid> to ora_lms0_<sid>
- For the Oracle Management Packs pattern, added support for Oracle Cloud Management Pack for Oracle Database and Oracle Database Lifecycle Management Pack.
TKU December 2014
The following improvements were made:
- Resolved an issue with "User doesn't have enough privilege to perform the operation".
- Privileged execution of crs_stat -v is now performed where a user doesn't have enough privilege (QM001866327).
2015
TKU April 2015
Two scans are necessary to enable BMC Discovery to model all interdependent elements of Oracle Database and Oracle Real Application Clusters (QM001876497).
TKU May 2015
Updated the pattern to extract information about the patches installed for the Oracle database on UNIX systems (TKU-3915).
TKU October 2015
Added a workaround for the opatch lsinventory command on Oracle Enterprise Linux.
TKU November 2015
The pattern was updated to not trigger a Windows process with +ASM in arguments (QM001889967).
See updates in 2016-2020 years
2016
TKU January 2016
Updated the SI key to include global_db_name instead of ora_sid if the database is clustered.
TKU February 2016
The following improvements were made:
- Added support for cluster awareness to initially work in conjunction with Oracle Clusterware, Oracle DataGuard, HP Service Guard, and Symantec Veritas Cluster Server.
- Excluded ora_lmon_ from being an associated process because it is the primary process for the Oracle RAC Global Enqueue Service Monitor Software Instance.
- For BMC ADDM 10.2 and earlier versions, reverted the change to the SI key to use global_db_name instead of ora_sid if the database is clustered (00071274).
- Added the Database role attribute, as extracted from the v$database query, to the Oracle Parameters detail node with a value of PRIMARY, PHYSICAL STANDBY, or LOGICAL STANDBY.
- Updated the regexes for ora_home extraction.
TKU March 2016
Added support for detecting Oracle Multitenant version 12.
TKU April 2016
Updated queries to Oracle DB (DRDC1-4759).
TKU July 2016
The following improvements were made:
- Updated the pattern trigger.
- Added a list of custom locations to the Oracle Installer location file in the configuration options.
- Enhanced global_db_name extraction.
TKU August 2016
Updated the getPatches () function with a privileged execution option (DRDC1-6577).
TKU September 2016
The following improvements were made:
- Added the discovery.access() approach for BMC Discovery version 11.0+ (DRDC1-6708).
- The hosting cluster node is looked up by db_unique_name instead of the full global_db_name (Esc: 093353)
- Changed <instance> for DatabaseDetail for clustered Oracle SI (Esc: 093353).
TKU October 2016
Added an updated query to Option/Pack extraction for Oracle 11.1 and earlier versions.
2017
TKU July 2017
Added code that prevents SI self-linking (DRDC1-9174).
TKU August 2017
Added a condition and modified the command for HP-UX that prevents command freezing (DRDC1-9493).
TKU September 2017
For the DatabaseServer pattern, the following improvements were made:
- Added listen_ip_address to arguments of the cluster_support_functions.getHostingNode function.
- IPS can be used as evidence for clustered Oracle SI identification (DRDC1-9423).
- Added a configuration option for Oracle patch extraction (DRDC1-9839).
For the TNSListener pattern, the following improvements were made:
- Create a link between Listener and Cluster based on listening IPs (DRDC1-9423).
- Added a secondary method for served_oracle_instances identification based on listener_name.
TKU December 2017
The following improvements were made:
- Added an alternative way of ora_home extraction for Oracle DB Server (DRDC1-10283).
- Added a listener_ora_file_path attribute to Oracle Net Services (TNS) Listener SI (DRDC1-10283).
2018
TKU July 2018
Updated service_names extraction (DRDC1-10989).
2019
TKU January 2019
The following improvements were made:
- Updated path versioning to use additional service names for SQL discovery.
- Replaced success_login_cred with success_login_credential.
TKU April 2019
The following improvements were made:
- Updated the pattern to use runCommand functions.
- Updated the srvctl command to be executed successfully in ksh
TKU May 2019
The following improvements were made:
- Updated the Clustered model to include locally running databases as Oracle Database Worker SIs.
- Updated Oracle Database Server instances, hosted on the cluster, to display the main instance name.
- Updated Oracle Listeners linking so that Local listeners are no longer hosted on the cluster.
- Added extra methods to identify the versions of 18c+ databases.
- Updated listening_sockets processing.
TKU October 2019
The following improvements were made:
- Updated Oracle unique name extraction through SQL.
- Added scan_name discovery.
- Added PSU number discovery.
TKU November 2019
The following improvements were made:
- Updated standard edition mapping.
- Added an extra versioning method for clustered instances.
TKU December 2019
The following improvements were made:
- Updated imports.
- Added RU (Release update) version extraction.
2020
TKU January 2020
Updated the pattern to always use local SID as an instance for standalone databases.
TKU March 2020
Updated imports.
TKU July 2020
The following improvements were made:
- Updated unique name assignment.
- Updated Listener removal.
- Updated the regex for RU number, active versioning regex, and Domain extraction.
- Updated related processes.
TKU October 2020
Updated the pattern to always append the domain name to the instance name, if the domain name was obtained.
See updates in 2021-2025 years
2021
TKU January 2021
Improved information extraction from the Oracle RDBMS pattern for Oracle Data Guard Cluster.
TKU March 2021
The following improvements were made:
- Updated the pattern to use new SQL queries to obtain a version and patch information for Oracle databases 18.1+
- Added edition extraction for silent installations on UNIX platforms.
TKU April 2021
For the Oracle.OracleRDBMS module Database pattern, the following improvements were made:
- Updated SQL versioning code to re-use success_login_credential from the previous scan.
- Updated extraction of listen_tcp_sockets to contain info from all serving Listeners (SCAN and Host (local)).
- Sockets from SCAN Listeners (with VIP) are used in priority for SQL queries.
- Updated code for removing odd Oracle SIs created by previous pattern versions or previous scans.
- Updated linkage between Oracle and Listener SIs.
For the Oracle.OracleRDBMS_Extended module Database pattern, the following improvements were made:
- Database nodes are aged by pattern code instead of removal (DRDC1-14608).
- Updated the pattern to use global_db_name in the name of CDB$ROOT Database nodes (DRDC1-16386).
TKU April 2021
The following improvements were made:
- Updated patch extraction for the psu_version (DRDC1-16673).
- Updated the pattern to populate only the most recent patch version (DRDC1-16745).
TKU May 2021
The following changes were made:
- Fixed issues related to the modeling of default Database nodes.
- Model default Database nodes on each scan.
- Use <db_unique_name> in the name of the default Database node.
- Added domain attribute for the Database node.
- Fixed linkage between Oracle and Listener SIs in Cluster environments.
TKU September 2021
For the Oracle.OracleRDBMS module Database pattern, created linkage to Listener SI from Oracle pattern (DRDC1-17206).
For the Oracle.OracleRDBMS_Extended module Database pattern, the following changes were made:
- Resolved an issue with the modeling of PDBs for Oracle SIs without service_name.
- Remove the obsolete default Database node with an incorrect key for the Oracle version earlier than 12 (DRDC1-17207).
For the Oracle.OracleRDBMS_Options module Database pattern, the following changes were made:
- Added support for Oracle Database Worker SIs (DRDC1-16270).
- Improved pack identification for Oracle 10g (based on the row.features attribute).
TKU October 2021
For the Oracle.OracleRDBMS module Database pattern, updated the instance assignment for SQL queries (DRDC1-17327).
For the Oracle.OracleRDBMS_Extended module Database pattern, the following changes were made:
- Updated the instance assignment for SQL queries (DRDC1-17327).
- Improved the pattern to run showUserSchemas queries only for Oracle SIs with relevant versions.
For the Oracle.OracleRDBMS_Options module Database pattern, the following changes were made:
- Updated the instance assignment for SQL queries (DRDC1-17327).
- Databases that may have been left attached to individual workers are removed upon re-scan.
TKU November 2021
Updated versioning from related listeners (DRDC1-17506).
2022
TKU January 2022
Updated the version and edition extraction.
TKU April 2022
Updated path versioning.
TKU May 2022
Updated the pattern to prevent a possible ECA error.
TKU July 2022
Changed how the pattern makes database calls.
2023
TKU May 2023
The following changes were made:
- Changed how the pattern retrieves global_db_name and service_names. These changes do not affect the functionality.
- Fixed bugs for TKU June 2023 and TKU July 2023.
TKU July 2023
Added ulimit -c 0 to the crsctl command (DRDC1-14481).
TKU August 2023
Updated the Oracle.OracleRDBMS.DatabaseServer pattern to get triggered by the ORA_<sid>_SMON process on OpenVMS.
TKU October 2023
Improved configuration files parsing.
TKU November 2023
Added a false-positive check for the Oracle listeners and updated edition extraction.
TKU December 2023
The following changes were made:
- Resolved an issue with obtaining service_name, global_db_name, and db_unique_name attributes.
- Added support for modeling Oracle Feature for each row of the query with detailed feature info (DRDC1-21833). This update includes a key change.
2024
TKU January 2024
The following changes were made:
- Updated the pattern to check the IP used for the select banner FROM v$version WHERE banner LIKE 'Oracle% query is valid before attempting to run the query (DRDC1-22391).
- Optimized code (DRDC1-22302).
TKU May 2024
Updated path versioning.
TKU August 2024
Fixed the ECA error (DRDC1-23842).
TKU September 2024
Restructured some of the code without altering the functionality.
TKU December 2024
Updated listener name extraction and served instances linking.
2025
TKU March 2025
The following improvements were made:
- Updated handling of INTERMEDIATE and OFFLINE states on clustered databases.
- Optimised use of SQL queries.