Go to main content
1/58
Contents
Title and Copyright Information
Preface
Audience
Accessing Oracle Communications Documentation
Documentation Accessibility
Document Revision History
Part I Basic BRM System Administration
1
Starting and Stopping the BRM System
About Starting and Stopping BRM Components
Choosing the User Name for BRM Components
Starting Several BRM Components in Sequence
Stopping Several BRM Components in Sequence
Starting a Component by Using the pin_ctl Utility
Starting BRM Components with pin_ctl
Starting Optional BRM Components with pin_ctl
Starting Pipeline Manager Components with pin_ctl
Getting Diagnostic Data When You Start a Component
Halting and Restarting a Component with One Command
Starting a Component and Clearing the Log File
Starting a Base Set of BRM Components
Starting BRM Components Automatically
Starting Multiple Families of BRM Components on the Same Computer
Confirming That a BRM Component Started Successfully
Stopping a BRM Component by Using the pin_ctl Utility
Getting Diagnostic Data When You Stop a Component
Stopping a Process by Using Commands
Stopping a Base Set of BRM Components
Starting and Stopping Pipeline Manager Manually
Starting Pipeline Manager
Stopping Pipeline Manager
Starting and Stopping Individual Pipelines
Restarting Pipeline Manager after an Abnormal Shutdown
Using Perl Scripts to Start and Stop Pipeline Manager
Starting and Stopping Oracle IMDB Cache DM
Starting IMDB Cache DM
Stopping IMDB Cache DM
2
Monitoring and Maintaining Your BRM System
About Monitoring BRM
Components Monitored and Controlled by the pin_ctl Utility
About Data Collected by OMF
Using the pin_ctl Utility to Monitor BRM
Setting Up the pin_ctl Utility
Getting the Status of a Component by Using the pin_ctl Utility
Clearing Log Files for a Component by Using the pin_ctl Utility
Getting Diagnostic Data for a Component by Using the pin_ctl Utility
Diagnostic Data Collected by the pin_ctl Utility
Configuring the pin_ctl Utility
Customizing the Components Included in ”all”
Customizing pin_ctl.conf for Starting and Stopping Optional Components
Creating a Custom ”all” Parameter List
Customizing the Components List
Customizing the pin_ctl Startup Configuration
Customizing the pin_ctl Utility Environment Variables
Setting the CTL_SNMP_PATH variable
Setting the pin_ctl Utility Log Level
Configuring the Start and Stop Validation Settings for pin_ctl
Customizing snmpset and snmpget Actions
Using Custom pin_ctl Configuration Files
Using the pin_db_alert Utility to Monitor Key Performance Indicators
KPI Default Behavior
About KPI Status and Alert Notifications
About Monitoring KPIs
Setting Up KPI Monitoring
Specifying Which KPI Data Is Extracted
Setting Up Email Alert Notifications
Enabling Database Access
Monitoring the Size of Audit Tables
Monitoring the Age of Audit Tables
Monitoring the Age of Events
Monitoring Active Triggers
Monitoring Indexes
Monitoring Stored Procedures
Running the pin_db_alert.pl Utility
Defining Custom KPIs
Collecting Diagnostic Information by Using RDA
Installing Remote Diagnostic Agent
Running Remote Diagnostic Agent
Viewing RDA Documentation
Dumping Business Parameters in XML Format
Using Logs to Monitor Components
Types of Log Files
Log Files for System Components
Log Files for Applications
Log Files for Client Applications
Location of Log Files
Default Log File Locations
Changing the Name or Location of a Log File
Setting the Reporting Level for Logging Messages
Getting Debugging Information from Command-Line Utilities
Dynamically Changing the CM and DM Log Levels
Setting the Log Level for a Specific Opcode
Recording Opcode Calls in the CM Log File
About Formatting Log Files
Masking Sensitive Data in Log Files
Maintaining Log Files
Checking the Number and ID of a BRM Process
Dealing with Hung and Looping Processes
Checking for Hung Processes
Checking for Looping Processes
Stopping a Hung or Looping Process
Monitoring CM Activity
Manually Checking the Status of the CM
Resolving Lost TCP Connections
Enabling Java PCM Clients to Use Operating System TCP/IP Keepalive Parameters
Setting the CM Log Time Resolution
Setting a Timeout Value for Requests Sent to the CM
Configuring Multilevel CM Timeout for Client Requests
A Short (Suspect) Timeout
A Long (Failover) Timeout
Getting Quality of Service Statistics from the CM
Configuring CM QoS Statistics
Monitoring DM Activity
Manually Checking the Status of the DM
Checking the DM Status in flist Format
Checking the DM Status in a Report Format
Monitoring DM Shared Memory Usage
Monitoring DM Transaction Queues
Monitoring DM Back Ends
Monitoring DM Front Ends
Increasing the Level of Reporting for a DM
Using Environment Variables to Set Debug Options
Editing the Configuration File to Set Debug Options
Logging the DM Process Time Information for Performance Diagnostics
Replacing Failed DM Child Processes
Monitoring Pipeline Manager
Monitoring Pipeline Manager Memory Usage
Monitoring Pipeline Manager EDR Throughput
Getting Recent Pipeline Log File Entries
Monitoring IMDB Cache DM
Generating the IMDB Cache DM Core Dump
Troubleshooting IMDB Cache DM errors
Getting Opcode Statistics from IMDB Cache DM
About the Global Transaction System Tables and Views
About the GLOBAL_TRANS_T Table
About the GLOBAL_PENDING_TRANS_T Table
About the DBA_2PC_PENDING View
Maintaining IMDB Cache DM
Handling Active IMDB Cache DM Failure
Handling Active Node Failure
Managing Cache Group Data
Finding and Fixing Global Transaction Errors
Monitoring Customer Center Activity
Monitoring Hardware and Operating Systems
Checking the Version Numbers of Components
Checking BRM Component Version Numbers
Checking Pipeline Component Version Numbers
Using the Diagnostic Data Handler to Get OMF Diagnostic Data
Getting a Snapshot from the Diagnostic Data Handler
About Operations Management Framework
About Probe Data
Using the SNMP Instrumentation Protocol to Monitor and Control BRM Components
About the SNMP Components
Installing SNMP
Configuring SNMP Components
Problems Using SNMP on Oracle Solaris 10
Enabling SNMP Instrumentation Data Collection
About the BRM MIB
About Dynamic Object IDs
About Instance IDs for Table Probes
About the Process Table
About the Registry Table
Getting and Setting Instrumentation by Using SNMP
Sample SNMP Input and Output
snmpGet
snmpSet
snmpWalk
Using the HTTP Instrumentation Protocol to Read OMF Instrumentation Data
Enabling HTTP Display of Instrumentation Data
Displaying Instrumentation Data in a Web Browser
Customizing the Data Displayed by the HTTP Instrumentation Protocol
3
Backing Up and Restoring Your BRM System
About Backing Up and Restoring BRM
Backing Up BRM Configuration
Backing Up BRM Files
Backing Up Pipeline Manager Files
Backing Up Rated Event Loader Files
Restoring BRM Configuration
4
Using Configuration Files to Connect and Configure Components
About Configuration and Properties Files
Configuration Entry Syntax
Syntax for Configuration Entries
Syntax for Facilities Module Entries
Preparing for Platform Migration by Using Variables in pin.conf Files
Locations of Configuration and Properties Files
File Locations
Configuring a Shared pin.conf File
Guidelines for Editing Java Properties Files
Common Properties File Entry Syntax
Connection Entry
Failover Entry
Other Properties Entries
About Validating XML Configuration Files
About Connecting BRM Components
Guidelines for Database and Port-Number Entries
Setting Data Manager Attributes
Connecting a Data Manager to the BRM Database
Creating Configuration Files for BRM Utilities
Reconfiguring a BRM Component
Running Non-MTA Utilities in Multischema Systems
Configuring BRM by Using the pin_bus_params Utility
Retrieving /config/business_params Objects
Loading /config/business_params Objects
5
Implementing System Security
Using General System-Security Measures
Basic Security Considerations
Understanding the BRM Environment
Oracle Security Documentation
Storage of Passwords in Configuration Files
Configuring Access to the BRM Database
Configuring Login Names and Passwords for BRM Access
Configuring the CM to Verify Application Logins with the Service Only
Configuring the Maximum Number of Invalid Login Attempts
Configuring Applications to Provide Login Information
Login Information for Java-Based Client Applications
Changing Default Passwords for Java-Based Client Applications
Login Information for Payment Tool
Login Information for Optional Service Integration Components
Creating a Customer Service Representative Account
Changing the Login Name and Password for an Account
Logging Customer Service Representative Activities
Setting Up Permissions in BRM Applications
About Permissioning Center
About Access to Permissioning Center
About Managing Roles
About Multiple Role Support
About Hierarchical Roles
About Managing Permissions in Permissioning Center
Managing CSR Passwords
Setting CSR Account Password Status
Automatic Logout
Changing the Password
Unlocking a Locked CSR Account
Setting the Default Password Expiry Duration
Unlocking the Locked root Account
How Permission Settings Are Stored
Permission Types
Customer Center Permission Type
Collections Center Permission Types
Pricing Center Permission Types
Suspense Management Center Permission Types
Other Client Application Permission Types
Access Levels
Setting Up Access to Brands
Protecting BRM Passwords
Enabling Secure Communication between BRM Components
Working with SSL/TLS Certificates and Oracle Wallets
Creating an Oracle Wallet and a Server Certificate
Using the orapki Utility to Create Oracle Wallets and Certificates
BRM-Supported Cipher Suites
Enabling SSL/TLS in Connection Managers
Enabling SSL/TLS in Data Managers
Enabling SSL/TLS for C and C++ PCM Clients
Enabling SSL/TLS for Java PCM Clients
Enabling SSL for Customer Center Web Start Deployment
Enabling SSL/TLS for Java Server Processes
Enabling SSL/TLS in Connection Manager Master Processes
Enabling SSL/TLS for Payment Tool
Enabling SSL/TLS with Custom Applications
Verifying Server Host Name
SSL/TLS Client Certificate Authentication
Creating Debugging Logs for SSL/TLS
6
BRM OMF Instrumented Objects
About the BRM MIB
About the Top-Level Components in the MIB
Transaction Manager Probes
Log File Probes
Operations Management Framework Probes
HTTP Probes
SNMP Probes
Diagnostic Data Handler Probe
Multi-Threaded Framework
Connection Configurations Probes
Connection Configurations Probes
Oracle DM Server Probes
Thread Check Manager Probes
Thread Check Manager Probes
Thread Chart Probes
MTF State Manager Probes
AAA Manager Connection and Number Portability Probes
Connection Monitor Probes
Number Portability Probes
Memory Monitor Probes
Pipeline Statistics Probes
Throughput Statistics Probes
Last Throughputs Probes
Opcode Latency Probes
Opcode Plug-In Probes
Last Latency Probes
Input Probes
Input Controller Probes
Last Processing Times Probes
SNMP Object IDs
MIB Prefix
Transaction Manager OIDs
Log File OIDs
OMF OIDs
MTF OIDs
Data Object OIDs
AAA Manager Connection and Number Portability OIDs
Memory Monitor OIDs
Statistics OIDs
fct Probe OIDs
Input Controller probes
Process Table
Registry Table
7
Configuring Pipeline Manager
About Configuring Pipeline Manager
Using Registry Files to Configure Pipeline Manager
About the Registry File Structure
About the Registry File Syntax
About the Sample Registry Files
About Configuring Pipelines
About Configuring Function Modules
About iScripts and iRules
About Configuring iScripts
About Configuring iRules
Configuring Multiple Instances of a Pipeline
About Configuring Multiple Instances of Sequencers, Output Streams, or System Brands
Configuring Multiple Instances of Sequencers, Output Streams, or System Brands
Configuring the Data Pool
Connecting a Module to a Database
Forcing a Database Reconnection
Reloading Data into a Pipeline Manager Module
Using Business Parameter Settings from the BRM Database
Connecting Pipeline Manager Modules to DAT_PortalConfig
Printing Business Parameter Settings Stored in DAT_PortalConfig Memory
Refreshing Business Parameter Settings Stored in DAT_PortalConfig Memory
Connecting a Pipeline Manager Module to Another Module
Configuring Pipeline Buffers
Using Rogue Wave Buffers
Using Block Transfer Buffers on Solaris Systems
Using Array Buffers on HP-UX Itanium and Solaris Systems
Using Semaphore Files to Control Pipeline Manager
Updating Configuration Settings during Runtime by Using Semaphore Files
Configuring Where and How Often the Controller Checks for Semaphore Files
Procedure for Updating Configuration Settings
Semaphore File Syntax
Semaphore Error Messages
Using Events to Start External Programs
About Mapping Events to Programs
Controlling External Programs
About Running External Programs
Troubleshooting Event Handling
About Pipeline Manager Transactions
About the Transaction Manager
About Cancelling Transactions When a Rollback Occurs
About Transaction Log Files
Configuring the Transaction ID Controller
About Storing IDs in Cache
About the Transaction ID State File and Table
Configuring Sequence Checking
Sequence Numbers in the Header Record
Deciding Whether to Use Sequencers
About Sequence Checking
About Sequence Generation
About Maximum and Minimum Sequence Numbers
About Recycled EDRs
About Sequencer Files and Tables
Sequencer State Files and State Tables
Sequencer Log Files and Log Tables
Checking and Generating Sequence Numbers
Configuring the NET_EM Module for Real-Time Processing
Configuring the NET_EM Module
Specifying the Type of NET_EM Opcode Processing
Configuring the CM to Send Real-Time Requests to the NET_EM Module
About Pipeline Manager Log Files
Pipeline Manager Log File Registry Entries
About Error Message Files
About Log File Contents
Troubleshooting Pipeline Modules
Writing EDR Contents to a Log File
Using a Semaphore to Write EDR Contents to a File for Debugging
Sample EDR Content Log File
Using Perl Scripts to Administer Pipeline Manager
8
Controlling Batch Operations
About the Batch Controller
Setting Activity Times and Triggers
General Batch Controller Parameters
Connection Parameters
Time-to-Run Parameters
Log-File Parameter
Timeout-Limit Parameters
Example of Parameters
Handler Identification
Occurrence-Driven Execution
Timed Execution
Metronomic Execution
Scheduled Execution
Starting the Batch Controller
About SampleHandler
Copying SampleHandler
Customizing SampleHandler
Configuring the Batch Controller
Starting the New Batch Handler
9
About Connection Pooling
Overview
Configuring the Connection Pool
Infranet.properties File Connection Pool Parameters
Connection Pool Error Handling
Monitoring Connection Pooling Events
10
System Administration Utilities and Scripts
load_pin_event_record_map
partition_utils
partitioning.pl
pin_clean_asos
pin_clean_rsvns
pin_close_items
pin_ctl
pin_db_alert.pl
pin_purge
pin_sub_balance_cleanup
pin_tt_schema_gen
pin_virtual_gen
purge_audit_tables.pl
11
SNMP Utilities
snmpBulk
snmpDiscover
snmpGet
snmpNext
snmpNextAsync
snmpPasswd
snmpSet
snmpWalk
snmpWalkThreads
Part II Administering a High-Availability System
12
Understanding a High-Availability System
About High-Availability BRM Systems
About the Architecture of a High-Availability BRM System
About Connection Managers in a High-Availability System
How CMs Handle Real-Time Pipeline Failure
How CMs Handle IMDB Cache DM Failure
Initial Connection Failure
Session Failure
About IMDB Cache DMs and Data Stores in a High-Availability System
How IMDB Cache DMs Fail Over
About Active Node Failure
About Active IMDB Cache DM Failure
Manually Activating a Standby IMDB Cache DM
How IMDB Cache DMs Handle Data Store Failure
Initial Connection Failure
Transaction Failure
How IMDB Cache DMs Handle Oracle RAC Failure
Initial Connection Failure
Session Failure
About the BRM Database in a High-Availability System
About Oracle Real Application Clusters and Oracle Clusterware
About Multischema High-Availability Systems
13
Configuring a High-Availability System
About Setting Up a High-Availability System
Configuring the BRM Database for High Availability
Setting Up Oracle RAC for Failover in a High-Availability System
Configuring Oracle Database Services
Defining Connections to the Oracle Database Services
Connecting IMDB Cache DMs to Oracle RAC Instances for High Availability
Minimizing Recovery Time of Oracle RAC Instances
Configuring IMDB Cache Manager for High Availability
Creating and Configuring Active Data Stores
Initializing an Active Data Store
Generating the Schema and Load SQL Files for the Active Data Store
Initializing the Data Store
Configuring the Cluster for an Active Data Store
Configuring Standby Data Stores
Creating Active and Standby Data Store Pairs
Associating IMDB Cache DM Instances with Data Stores
Making a Data Store Accessible to IMDB Cache DM
Configuring an IMDB Cache DM Instance for a Data Store
Configuring pin_ctl to Start and Stop IMDB Cache DM
Configuring Connection Managers for High Availability
Connecting CMs to IMDB Cache DMs
Restoring a High-availability System after Failover
Switching Back to the Primary Oracle RAC Instance
Ensuring All Accounts Are Billed
Part III Improving Performance
14
Improving BRM Performance
Monitoring Performance
Improving Connection Manager Performance
Increasing CM Login Performance
Using CM Proxy to Allow Unauthenticated Log On
Turning Off Session-Event Logging
Turning Off the Checking of Logons and Passwords
Load Balancing CMs
Improving Performance for Loading Large Price Lists
Improving Real-Time Rating Performance
Changing the Precision of Rounded and Calculated Values
Setting the Interval for Checking for Price List Changes
Setting the Interval for Updating Zone Maps
Filtering the ERAs Considered during Rating and Discounting
Enabling and Disabling the Caching of Customized Products
Configuring the Maximum Number of Products and Discounts Cached
Improving the Performance of your Multithreaded Applications
Controlling Thread Load on Your Multithreaded Application
Monitoring the Thread Activity of Your Multithreaded Application
Logging Noncurrency Events
Specifying the Number of Connections to CMs
Setting the CM Time Interval between Opcode Requests
Using Connection Manager Master Processes
Sample CMMP Configuration
Setting Up a CMMP
Improving Data Manager and Queue Manager Performance
About Queuing-Based Processes
Example of Queuing in a Client-to-CM Connection
Configuring DM Front Ends and Back Ends
Ratio of Front Ends to Back Ends
Providing Enough Front-End Connections
Determining the Required Number of Back Ends
Determining the Maximum Number of Back Ends Dedicated to Transactions
Setting the DM Time Interval between Opcode Requests
Setting How Long the DM Waits for the Background Startup Process to Finish
Configuring Multiple Pipelines in the DM to Improve Performance
Setting DM Shared Memory Size
Determining DM Shared Memory Requirements
How BRM Allocates Shared Memory for Searches
Shared Memory Guidelines
Reducing Resources Used for Search Queries
Load Balancing DMs
Optimizing Memory Allocation during Database Searches
Improving BRM Performance during Database Searches
Increasing DM CPU Usage
Examples of DM Configurations
Improving Interprocess Communication (IPC) Performance
Sample Configuration Settings for a Multischema System
Improving Performance by Disabling Unused Features
Tuning Billing Performance by Using Configuration Files
Filtering Search Results
Tuning the Number of Children for Billing Utilities
Tuning the Account Cache Size for Billing Utilities (fetch_size)
Tuning the Batch Size for Billing Utilities (per_batch)
Tuning the Batch Size for the pin_collect Utility
Specifying the Number of Retries in a Deadlock
Rearranging Accounts to Improve Billing Performance
Improving Performance in Retrieving Purchased Offerings for a Bill Unit
Tuning Memory for Billing
Additional Issues Related to Billing Performance
How the Number of Events Affects Billing
Tuning Billing Performance by Using Business Parameters
Improving Performance by Skipping Previous Total Unpaid Bill for Open Item Accounting Type
Improving Trial Billing Performance by Enabling General Ledger Collection
Excluding Searches on Closed Offerings
Excluding Searches on Overridden Products
Tuning Billing Performance by Using Business Profiles
Improving Performance by Skipping Previous Total for Open Item Accounting Type When Calculating the Current Bill
Improving Performance by Using Multiple Item Configurations
Improving Performance by Skipping Billing-Time Tax Calculation
Tuning Invoicing Performance
Setting the Number of Children for Invoice Utilities
Tuning the Account Cache Size for Invoice Utilities (fetch_size)
Setting the Batch Size for Invoice Utilities (per_step)
Optimizing Invoicing Performance
Improving Performance in Retrieving Product Details During Product Purchase
Improving Data Processing Performance
How Statement-Handle Caching Works
How to Use the Statement-Handle Cache
Managing Database Usage
Rebuilding Indexes
Removing Unused Indexes
BRM Account and Rating Performance Considerations
Tuning Multithreaded Workloads
CM and DM RAM and Swap Guidelines
Hardware Guidelines
Improving Network Performance
Troubleshooting Poor Performance
Low Performance with High CPU Utilization
Low Performance with Low CPU Utilization
Quick Troubleshooting Steps
About Benchmarking
BRM Performance Diagnosis Checklist
Describe the Problem
Describe the Configuration
Hardware Configuration
Operating System Configuration
BRM Configuration
Network Configuration
Database Server Configuration
Oracle Database Configuration
Describe the Activity
15
Optimizing Pipeline Manager Performance
Pipeline Manager Optimization Overview
Key Metrics for Measuring Performance
About Measuring Pipeline Manager Performance
Information Requirements
Testing Requirements
Optimizing Pipeline Manager
Troubleshooting Pipeline Performance
Optimizing Function Modules
Configuring Single-Threaded or Multithreaded Operation
Reducing Startup Times with Parallel Loading
Assigning Multiple Threads to Process Function Modules
Configuring the DAT_AccountBatch Module Database Connections and Threads
Setting the Hash Map Size for Threads
Locking Objects during DAT_AccountBatch Processing
Configuring Threads for DAT_BalanceBatch Connections
Improving Pipeline Manager Startup Performance
Improving DAT_BalanceBatch Loading Performance
Improving DAT_AccountBatch and DAT_BalanceBatch Load Balancing
Breaking Up Large Nested Subsections in Registry Files
Optimizing a Pipeline by Using Function Pools
Adding Function Pools
Shifting Modules between Function Pools
Configuring Buffers
Combining Multiple CDR Files into One Transaction
Increasing Pipeline Manager Throughput When an EDR Is Associated with Multiple Output Streams
Configuring Multiple Pipelines
Customizing Flists Sent to a Real-Time Pipeline
Configuration Object Dot Notation
About the
field_list
.xml File
Mapping Events to Flists
Usage Example
Sample Unmodified Flist
Sample Fields Required by Pipeline Manager
sample.xml File
Measuring System Latencies with Instrumentation
Using Instrumentation to Collect Module Performance Statistics
Viewing Instrumentation Testing Results
Sample Log File
Optimizing the DAT_USC_Map Module
About Precompiling USC Mapping Rules
About Filtering Mapping Rules
Configuring the DAT_USC_Map Module for Startup Performance
Increasing the Number of Threads Used to Load Mapping Data
Precompiling Usage Scenario Mapping Data
Filtering the Mapping Data to Compile and Load
Using Semaphores
Other Pipeline Manager Monitoring Tools
Viewing the Pipeline Log
Configuring Buffer Size Polling
OS-Specific Pipeline Manager Monitoring Tools
Solaris Monitoring Tools
Displaying Thread Details
Dumping the Call Stack of an Active Process
Identifying Thread Functions
HP-UX IA64 Monitoring Tools
Linux Monitoring Tools
AIX Monitoring Tools
16
Optimizing BRM for Prepaid and Postpaid Convergence
About Convergent BRM Systems
About Cache Residency
How Cache Residency Is Determined
About Setting Up Business Profiles for Cache Residency Distinction
How BRM Caches Objects in a Convergent Rating System
About Changing the Cache Type of an Object
Configuring BRM for Cache Residency Distinction
Enabling Cache Residency Distinction
Assigning Objects a Cache Residency Value
Setting Up Cache Residency Validation Rules
Changing the Default Business Profile
Overriding the Default Business Profile
About Selective Account Loading
Configuring Pipeline Manager for Selective Account Loading
Enabling Selective Account Loading
Configuring Pipeline Manager to Process Prepaid CDRs
Customizing Cache Residency Distinction
Configuring Nonreference Objects for Cache Residency Distinction
Part IV Troubleshooting BRM
17
Resolving Problems in Your BRM System
General Checklist for Resolving Problems with BRM
Using Error Logs to Troubleshoot BRM
Finding Error Log Files
Understanding Error-Message Syntax
Resolving Clusters of Error Messages
Logging External User Information in Error Logs
Interpreting Error Messages
Example 1: Failure of a Client Application
Example 2: Problem with Customer Center
Example 3: Getting More Information from Error Numbers
Example 4: Getting More Information about Oracle Errors
Diagnosing Some Common Problems with BRM
Problems Starting BRM Components
Problem: Bad Bind, Error 13
Problem: Bad Bind, Error 125
Problem: Cannot Connect to Oracle Database
Problem: ORA-01502: Index 'PINPAP.I_EVENT_ITEM_OBJ__ID' or Partition of Such Index Is in Unusable State
Problems Stopping BRM Components
Problem: No Permission to Stop the Component
Problem: No pid File
Problems Connecting to BRM
Problem: Cannot Connect to the Database
Problem: Cannot Connect to the CM
Problem: CM Cannot Connect to a DM
Problems with Deadlocking
Problem: BRM ”Hangs” or Oracle Deadlocks
Problem: dm_oracle Cannot Connect to the Oracle Database
Problems with Memory Management
Problem: Out of Memory
Problem: Java Out of Memory Error
Problem: Memory Problems with the Oracle DM
Problems Running Billing
Problem: Billing Daemons Are Running, but Nothing Happens
Problem: High CPU Usage for the Number of Accounts Processed
Problems Creating Accounts
Problem: fm_delivery_mail_sendmsgs Error Reported in the CM Log File
Problems Loading Configuration Objects
Problem: Failed to create XML context in isXsltExists, error [266]
Getting Help with BRM Problems
Before You Contact Technical Support
Reporting Problems
18
Reference Guide to BRM Error Codes
Interpreting BRM Error Codes
BRM Error Locations
BRM Error Classes
BRM Error Codes
19
Pipeline Manager Error Messages
Pipeline Framework Error Messages
Pipeline Manager Module Error Messages
DAT_AccountBatch
DAT_AccountRealtime
DAT_BalanceBatch
DAT_BalanceRealtime
DAT_ConnectionManager
DAT_ConnectionPool
DAT_Currency
DAT_Discount
DAT_ExchangeRate
DAT_InterConnect
DAT_ItemAssign
DAT_Listener
DAT_ModelSelector
DAT_NumberPortability
DAT_PortalConfig
DAT_Price
DAT_Rateplan
DAT_Recycle
DAT_ResubmitBatch
DAT_ScenarioReader
DAT_USC_Map
DAT_Zone
EXT_InEasyDB
EXT_PipelineDispatcher
FCT_Account
FCT_AccountRouter
FCT_AggreGate
FCT_APN_Map
FCT_ApplyBalance
FCT_BatchSuspense
FCT_BillingRecord
FCT_CallAssembling
FCT_CarrierIcRating
FCT_CiberOcc
FCT_CliMapping
FCT_CreditLimitCheck
FCT_CustomerRating
FCT_DataDump
FCT_Discard
FCT_Discount
FCT_DroppedCall
FCT_DuplicateCheck
FCT_EnhancedSplitting
FCT_ExchangeRate
FCT_Filter_Set
FCT_IRules
FCT_IScriptPlugIn
FCT_ItemAssign
FCT_MainRating
FCT_Opcode
FCT_PreRating
FCT_PreSuspense
FCT_RateAdjust
FCT_Reject
FCT_Rounding
FCT_SegZoneNoCust
FCT_Suspense
FCT_Timer
FCT_TriggerBill
FCT_UoM_Map
FCT_UsageClassMap
FCT_USC_Map
INP_GenericStream
INP_Realtime
INP_Recycle
NET_EM
OUT_DB
OUT_GenericStream
OUT_Realtime
Pipeline Utility Error Messages
LoadIFWConfig
OMF Error Messages
Part V Managing IMDB Cache-Enabled Systems
20
Using Oracle IMDB Cache Manager
About Oracle IMDB Cache Manager
About Caching BRM Objects in Memory
About BRM Cache Groups
Guidelines for Setting Cache Group Size
About Loading BRM Objects into Oracle IMDB Cache
About Loading Migrated Accounts into the Cache Groups
About Managing Data in Oracle IMDB Cache
Managing Fast-Growing Tables
About Purging Expired Reservation and Active-Session Objects
About Purging Closed Bills, Items, Journals, and Expired Subbalances
How Objects Are Stored in Oracle IMDB Cache-Enabled Systems
About the Residency Type and Oracle IMDB Data Manager
About Storing Usage Events
Using Oracle Functions or Procedures in an SQL Statement
About Searching for Usage Events in Oracle IMDB Cache-Enabled Systems
About Committing Transactions in Both Oracle IMDB Cache and the BRM Database
About Recovering from Oracle Global Transaction Errors
About Manually Fixing Oracle Global Transaction Failures
Using the Oracle IMDB Cache Grid to Partition Data
About Logical Partitioning in High Availability Systems
How Accounts Are Assigned to the Logical Partition
About Finding Data in Logical Partitions
About Performing Searches in Logical Partitions
About Retrieving Data from Logical Partitions
How IMDB Cache DM Connects to Oracle IMDB Cache
About the AAA Flow in a BRM System with IMDB Cache Manager
21
Installing IMDB Cache Manager
About Setting Up a BRM System with IMDB Cache Manager
About Setting Up IMDB Cache Manager for a Basic BRM System
About Setting Up IMDB Cache Manager in a Multischema System
Hardware and Software Requirements
Installing and Configuring a BRM System with IMDB Cache Manager
Installing IMDB Cache Manager
Obtaining Information Needed for Installing IMDB Cache Manager
Installing IMDB Cache Manager
Running the pin_setup Script
Granting Privileges to the Global Transaction Tables
Creating the Data Store in Oracle IMDB Cache
Creating Data Stores for a Basic BRM System
Creating Data Stores for Logical Partitioning
Initializing Your Data Stores in Oracle IMDB Cache
Connecting Your Data Stores to the BRM Database
Connecting IMDB Cache DM to Your Data Stores
Connecting the IMDB Cache DM to Your Data Store
Connecting Each IMDB Cache DM Instance to a Data Store
Connecting the CM to IMDB Cache DM
About Installing Optional Components
Uninstalling IMDB Cache Manager
22
Configuring IMDB Cache Manager
IMDB Cache Manager Configuration Tasks
Configuring IMDB Cache Manager for Transaction Consistency
Enabling the Transaction Consistency Feature
Specifying How Long to Keep Transactions Active after an Error
Searching for Events in Both Oracle IMDB Cache and the BRM Database
Enabling Union Searches for Events
Specifying the Timeout Value for Batch Polling Operations
Customizing External Applications for Real-Time Union Searches
Customizing External Applications for Batch Polling Operations
FM_UTILS_POLL_TT
Customizing External Applications for Logical Partitions
Retrieving Data Across Logical Partitions
Searching for Data Across Logical Partitions
Configuring Your Event Tables for BRM Reports
Configuring How to Store Reservations
Setting the Stacksize Limit
Setting Database Schema Status for Oracle IMDB Cache Systems
Setting the Database Schema Priority for Oracle IMDB Cache Systems
23
Generating the BRM Cache Group Schema
About Generating the BRM Cache Group Schema
Creating and Initializing Your Cache Group Schema
Configuring the pin_tt_schema_gen.values File
Defining Cache Group Information
Defining Cache Group Information for Special Cases
Setting On Delete Cascade
Defining the Cache Group Aging Policy
Defining Transient Local Tables
Supporting Oracle IMDB Cache Data Types
Generating the Load SQL Script
Defining the Logical Partition Database Number
Generating Your Schema and Load SQL Scripts
Generating Scripts for a Basic BRM System
Generating Scripts for a BRM System with Logical Partitioning
24
Customizing IMDB Cache Manager
About Customizing the Cache Groups
Customizing the Default BRM Cache Groups
About Extending Tables in the Default BRM Cache Groups
Creating a Custom Cache Group
Creating Custom Fields and Storable Classes
Assigning Custom Objects a Residency Value
About Extending Event Type Storable Classes
Logical Partitioning and POID DB Translation
PIN_GET_SCHEMA_NO
Syntax
Parameters
Return Values
Error Handling
25
Migrating Data to an Oracle IMDB Cache-Enabled BRM System
About Migrating Data to an Oracle IMDB Cache-Enabled BRM System
BRM Processes That Cannot Coexist with IMDB Cache Manager
How IMDB Cache Manager Migrates Your Existing BRM Accounts
How IMDB Cache Manager Handles Subscriber Distribution for Account Migration
How IMDB Cache Manager Handles POID Fields
Using the Same Logical Partition for Hierarchical Accounts
Overview of the Migration Process
Configuration Entries Required for Migration
Preparing Accounts for Distribution into IMDB Cache Logical Partitions
Migrating a BRM TIMOS Environment to an IMDB Cache Environment
Loading Subscriber Data into the Oracle IMDB Cache Data Stores
Changes to BRM after Installing IMDB Cache Manager
Opcode Changes
Utility Changes
Part VI Partitioning and Managing BRM Tables
26
Partitioning Tables
About Partitioning
Overview of Enabling Partitioning during Installation
About Partitioning Schemes
About Nonpurgeable Events and Items
Associating Items with Nonpurgeable Events
About Objects Stored in partition_last and partition_last_pin
About the Default Partitioning Scheme
If You Do Not Create Default Partitions
Conversion Partitioning Scheme
About Partitions for Delayed Events
Overview of Partitioning Schemes
About Managing Partitions
About Purging Objects
About Purging Objects by Removing Partitions
About Purging Objects without Removing Partitions
About Running the partition_utils Utility
Partition Naming Convention
Running the partition_utils Utility in Test Mode
Configuring a Database Connection
Improving Performance When Using partition_utils
Restarting partition_utils
Adding Partitions
Enabling Delayed-Event Partitioning
Disabling Delayed-Event Partitioning
Updating Partitions
Purging Objects by Removing Partitions
Purging Objects without Removing Partitions
Finding the Maximum POID for a Date
Customizing Partition Limitations
Customizing the List of Events and Items Stored in partition_historic
27
Converting Nonpartitioned Classes to Partitioned Classes
About Converting Nonpartitioned Classes to Partitioned Classes
Converting Nonpartitioned Classes to Partitioned Classes
Increasing Disk Space for Tables and Indexes
Installing the Partitioning Package
(Optional) Reconfiguring the Parameters
Merging the pin_setup.values File
Backing Up Your BRM Database
Running the Partitioning Conversion Scripts
Adding Purgeable Partitions to Tables
Restarting BRM
About the Conversion Scripts and Files
Converting Additional Nonpartitioned Classes to Partitioned Classes
28
About Purging Data
About Purging Database Objects
Objects Purged by Default
About Purging BRM Event Objects
Event Objects That Have a Balance Impact
Event Objects That Do Not Have a Balance Impact
Event and Item Objects Stored in partition_historic
Impact of Purging Event Objects
Billing Event Objects
Accounts Receivable Event Objects
Delayed Event Objects
Group Event Objects
Sharing Group Event Objects
Session Event Objects
Auditing Event Objects
Enabling Open Items to Be Purged
Closing Open Item Objects Processed in Past Billing Cycles
About Purging Account Subbalances
29
Generating Virtual Columns on Event Tables
About Generating Virtual Columns on Event Tables
Generating Virtual Columns on Event Tables
Viewing Tasks for Generating Virtual Columns
Viewing and then Running Virtual-Column Tasks
Viewing Virtual-Column Task Details
Exporting a BRM Schema with Virtual Columns
Part VII Managing a Multischema System
30
Managing a Multischema System
About Multischema Systems
Using Pipeline Manager with Multiple Database Schemas
Converting a Single-Schema System to a Multischema System
Preparing to Manage a Multischema System
Adding a BRM Installation Machine to a Multischema Environment
Adding Database Schemas to a Multischema System
Configuring the pin_multidb.conf File on the Primary Installation Machine
Setting Database Schema Status
Setting Database Schema Priorities
Creating Custom Tables That Are Available to All Database Schemas
Synchronizing Database Schema Data Dictionaries
Synchronizing the Database Schema /uniqueness Objects
Changing the Interval for Updating the Distribution Table
31
Multischema Utilities
load_config_dist
load_pin_uniqueness
pin_config_distribution
pin_mta_monitor
pin_multidb
Part VIII Migrating Accounts
32
Understanding Account Migration
About Account Migration
When to Migrate Accounts
About Account Migration Processes
Account Migration Involving Only the BRM Database
Account Migration Involving a BRM Database and an Oracle IMDB Cache
Account Migration Between the Logical Partitions in One IMDB Cache Grid
Scheduling Account Migration
About the AMM Application
How AMM Works
How AMM Works with Oracle IMDB Cache Manager in the BRM Environment
About Migrating Accounts When the Pipeline Manager Is Online
Deleting Migrated Objects
About Migrating Hierarchical, Sponsorship, and Resource Sharing Accounts
About Searching for Member and Nongroup Member Accounts
About Account Groups
About Migrating Account Groups
AMM Process Overview
About the Account Search Configuration File
About the pin_amt Utility
About the AMM Controller
How AMM Controller Processes Batches with Nongroup Members
How AMM Controller Processes Batches with Account Group Members
About the AMM Mover
About Distributed Transactions
Account Migration Restrictions
Account Activity Prevented during Account Migration
Do Not Rerate Events during Account Migration
Do Not Alter Account Group Members
Migration Prevented during Account Activity
Brand and Remittance Accounts Not Migrated
Unique POIDs Required across All Database Schemas
Transient Objects Are Not Migrated
Some Client Applications May Fail during Account Migration
AMM Does Not Support Some BRM Components
Using BRM Reports after Migration
About Using Multiple AMM Controllers
Account Migration Performance
About AMM Job Management Tables
About Job Status Flags
About Batch Status Flags
About Group Status Flags
33
Installing and Configuring BRM for Account Migration
System Requirements
General Software Requirements
Pipeline Manager Requirements
Software Requirements for Oracle IMDB Data Manager
Software Requirements for Account Migration Manager
Installing AMM
Configuring All Primary and Secondary Database Schemas
Installing the AMM Software on the Primary Installation Machine
Configuring Your Oracle DM to Check for Invalid Objects
Connecting AMM to Your Database Schemas
Configuring the AMM Infranet.properties File
Configuring Database and AMM Mover Information for Multischema Systems
Configuring AMM Controller Definitions
Specifying Schema Alias Information for Multischema Systems
Enabling the Unloading of Cache Groups from the Source Oracle IMDB Cache
Specifying Access Information for the Source Oracle IMDB Cache
AMM Infranet.properties File Parameters
Sample Infranet.properties File
Configuring the TimesTen JDBC Driver Jar file for BRM
Configuring the load_pin_uniqueness Utility for Oracle IMDB Cache
What's Next?
Configuring AMM for Additional Database Schemas
Configuring AMM for New Custom Tables
Tuning Your Database for Optimal Account Migration Performance
34
Migrating Accounts with the Pipeline Manager Running
About Migrating Accounts When Pipeline Manager Is Online
How AMM Interacts with Your Pipelines during Account Migration
About Waiting before Migrating Accounts
About Starting Multiple Jobs Concurrently
About Notifying the Pipelines about Account Migration
About AMM Business Events
About Sending AMM Business Events to the Pipelines
About Notifying AMM about EDR Processing
About Acknowledgment Events
About Sending Acknowledgments to AMM
About the Account Router Instance of the Pipeline Manager
About Suspending Call Records
About Reprocessing Suspended Call Records
Configuring Your System to Migrate Accounts When the Pipeline Manager Is Running
Configuring Your Account-Router Pipeline Manager
Configuring Your Routing Pipeline
Configuring Your Pre-recycling Pipeline
Configuring Your Resuspending Pipeline
Configuring the Data Pool
Configuring BRM to Handle Suspended EDRs
Configuring AMM to Send Business Events to Your Pipelines
Connecting AMM to the Primary CM
Configuring Account Synchronization
Configuring Your Pipelines to Dequeue AMM Business Events
Configuring Your Pipelines to Send Acknowledgments to AMM
Creating the Acknowledgment Queue
Connecting AMM Directly to Your Acknowledgment Queue
Configuring Your Pipelines to Send Acknowledgment Events
35
Using Account Migration Manager
Overview of Account Migration Tasks
Verifying Your System Configuration When Oracle IMDB Cache Is Used
Creating the Account Search Configuration File
Sample Account Search Configuration File
Submitting the Account Search File
Enabling Migration Jobs in the Queue
Starting the AMM Controller
Monitoring the AMM Controller
Checking the AMM Controller Status
Checking the AMM Controller Log File
Monitoring the AMM Controller in Real Time
Monitoring Account Migration
Monitoring Job Status
Checking Job Details
Checking Account Group Details
Handling Account Migration Failures
Finding Debugging Information
Reprocessing Failed Batches
Purging Migrated Objects from the Source Database Schema
Deleting Jobs from the Source Database Schema
Stopping the AMM Controller
Pausing and Resuming Account Migration
Loading Destination Oracle IMDB Cache with Data from BRM Database
Automating Account Migration
36
Migrating Accounts within an Oracle IMDB Cache Grid
About Account Migration within an Oracle IMDB Cache Grid
When to Migrate Accounts within an Oracle IMDB Cache Grid
How BRM Migrates Account Data within an Oracle IMDB Cache Grid
About the pin_amt_tt Utility
About the Transient Objects Migrated by the pin_amt_tt Utility
About Account Synchronization with Pipeline Manager after the Migration
About the Message Enqueued for the Pipeline
System and Configuration Requirements
Guidelines for Migrating Accounts with the pin_amt_tt Utility
About Account Migration Tasks
Overview of Migration Procedure
Configuring the pin_amt_tt Utility
Providing the Account Selection Criteria
Configuration File Parameters
Running the pin_amt_tt Utility
Monitoring Account Migration
Handling Account Migration Failures
Migrating the Transient Objects Manually
Cleaning Up the Oracle IMDB Cache after Migration
37
Modifying Applications to Work with AMM
Modifying Custom Client Applications for AMM
Modifying Custom BRM Reports for AMM
AMM Return Codes and Messages
38
Modifying the Account Migration Manager
Creating Custom Account Search Criteria
Creating a Search Template
Sample Search Template
Adding New Entries to the Account Search Configuration File
Sample Account Search Configuration File
Implementing and Compiling the Conversion Interface
Sample Class Implementing Conversion Interface
Verifying Your Search Criteria
Verifying That the Search Criteria Creates Valid SQL Statements
Verifying That the Search Criteria Finds Correct Accounts
39
AMM Entity Relationship Diagram
40
Account Migration Utilities
pin_amt
pin_amt_test
pin_amt_tt
Part IX Running Business Operations
41
Using Business Operations Center
About Using Business Operations Center
About Performing Operations in Business Operations Center
Enabling Secure Communication for the pin_job_executor Utility
Rendering Invoices in a Third-Party Invoice Application
About Generating Metrics to Display in Business Operations Center
Generating Business Metrics Data
Creating Indexes to Improve Performance While Generating Metrics Data
42
Business Operations Center Utilities
pin_generate_analytics
pin_job_executor
Part X Configuration File Reference
43
Business Logic pin.conf Reference
Accounts Receivable pin.conf Entries
Billing pin.conf Entries
Collections pin.conf Entries
Customer Management pin.conf Entries
Discounting pin.conf Entries
General Ledger pin.conf Entries
Invoicing pin.conf Entries
Payments pin.conf Entries
Pricing and Rating pin.conf Entries
Publication pin.conf Entries
Registration pin.conf Entries
Revenue Assurance pin.conf Entries
Service Lifecycle Management pin.conf Entries
Services Framework pin.conf Entries
Tax Calculation pin.conf Entries
44
System Administration pin.conf Reference
Connection Manager (CM) pin.conf Entries
Data Manager (DM) pin.conf Entries
EAI Manager pin.conf Entries
In-Memory Database (IMDB) Cache DM pin.conf Entries
Multithreaded Application (MTA) Framework pin.conf Entries
45
business_params Reference
Accounts Receivable business_params Entries
Activity business_params Entries
Billing business_params Entries
Customer Management business_params Entries
General Ledger business_params Entries
Invoicing business_params Entries
Pricing and Rating business_params Entries
Selective Account Loading business_params Entries
Subscription business_params Entries
System Administration business_params Entries
Scripting on this page enhances content navigation, but does not change the content in any way.