Dm_vertex Is Not Reconnecting If the DB Connection Was Lost During Location Validation

(Doc ID 1642535.1)

Last updated on FEBRUARY 29, 2016

Applies to:

Oracle Communications Billing and Revenue Management - Version 7.5.0.0.0 to 7.5.0.0.0 [Release 7.5.0]
Information in this document applies to any platform.
*** Checked for relevance on 02-29-2016 ***

Symptoms

On : BRM 7.5.0.6.0 version, Taxware Manager

Issue :

dm_vertex is not reconnecting if the DB connection is lost during location validation.

Scenario :

The ctq (CommTax Q series) database connection was lost. But when the connection is re-established, the taxes are not being applied when adding products to existing accounts or even while creating new accounts. After the dm_vertex is restarted, the taxes are being again calculated correctly.

Test :

As a test to verify the above issue below steps can be followed :

  1. Configure dm_vertex
  2. cm needs to point to dm_vertex
  3. change below entry in pin.conf of dm_vertex :
            - dm_vertex qm_n_fe 1
  4. tnsping $ORACLE_SID
       (DESCRIPTION = (ADDRESS = (PROTOCOL=
    TCP)(Host=abc.com)(Port= 1521)) (CONNECT_DATA = (SID =pindb)))
  5. On BRM server, dm_vertex is not yet started.
  6. Login to the host abc.com where database server is running and verify the instances related to dm_oracle. See below for example :
       ps -ef|grep LOCAL
       ora11g    7465     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7467     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7469     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7471     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7473     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7475     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7477     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7479     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7481     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7483     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7485     1  0 02:36 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7496     1  0 02:36 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7498     1  0 02:36 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7500     1  0 02:36 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7502     1  0 02:36 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7504     1  0 02:36 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7506     1  0 02:36 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7508     1  0 02:36 ?        00:00:00 oraclepindb (LOCAL=NO)
  7. On BRM server, start_dm_vertex.
  8. Now check the instances related to dm_vertex. See below example :
       ps -ef|grep LOCAL
       ora11g    7465     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7467     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7469     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7471     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7473     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7475     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7477     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7479     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7481     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7483     1  0 02:35 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7485     1  0 02:36 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7496     1  0 02:36 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7498     1  0 02:36 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7500     1  0 02:36 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7502     1  0 02:36 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7504     1  0 02:36 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7506     1  0 02:36 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7508     1  0 02:36 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7546     1  0 02:37 ?        00:00:00 ora_w000_pindb
       ora11g    7579     1  0 02:38 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7581     1  0 02:38 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7583     1  0 02:38 ?        00:00:00 oraclepindb (LOCAL=NO)
       ora11g    7585     1  0 02:38 ?        00:00:00 oraclepindb (LOCAL=NO)
  9. Note the new process IDs related to dm_vertex and kill them. For example :
       kill -9 7579,7581,7583,7585
  10. Create an account using customer center with following address for example : Cupertino, CA, 95014, US.
  11. On Contact page, while clicking "Next" it will give error
  12. Check the error in dm_vertex.pinlog :
         E Sat Dec 13 10:37:13 2003  dev  dm_vertex:30203 ../../dm_vertex_ctq.c:4182 1:ORACLE-129096E5:CustomerCenter:0:AWT-EventQueue-0:83:1394704439:0
                 ERROR: Unable to execute Location query by address information.
             [eCtqResultSelect - A database select operation failed]
  13. stop_dm_vertex and restart all BRM service
  14. start_dm_vertex
  15. Create an account using customer center with same address, for example, Cupertino, CA, 95014, US.
  16. Here again, there will be a communication error during location validation and account creation fails.


Expected Result:
       Account creation should be successful.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms