Salesforce

How to monitor the message replication queue set with the -pica parameter.

« Go Back

Information

 
TitleHow to monitor the message replication queue set with the -pica parameter.
URL NameP136161
Article Number000139183
EnvironmentProduct: OpenEdge
Version 10.x, 11.x, 12.x
OS: All supported platforms
Question/Problem Description
How to monitor the Database Service Manager message replication buffer queue set with the -pica source database startup parameter?
How to monitor the RDBMS IPC queue during replication processing?
How to know if the value of the source database startup parameter -pica has been set for the replicated environment?
Monitoring the number of buffers available in the Database Service Manager - IPC Queue Size (-pica)
Steps to Reproduce
Clarifying Information
Error Message
Defect Number
Enhancement Number
Cause
Resolution

The source database startup parameter, -pica, sets the size (in Kb) of an internal message queue in shared-memory to be used between the database server and the replication server.  It contains notifications that the database has just completed writing to an AI block and holds these on a queue for the RPLS process to send through to the listening RPLA.  The DSRUTIL monitor metric "Repl Server behind Source db" is all about latency between the source database writing out AI blocks and the ability of the RPLS process to send these messages through to the agent(s) for processing. For further information refer to Article:

It is important to set the size of -pica properly, when this queue fills it causes the source database to stall.

When the Replication Server queue (RPLS-Q) is full, any process trying to attach to database shared memory stalls. An example of this situation is outlined in Article

Contention with replication server over PICA queue has been further enhanced in OpenEdge 11.7.5, 12.0. For further information refer to Article:

Maximum value for -pica :

The database -pica queue (RPLS-Q) is the mechanism which allows the source and targets to be asynchronous.

The maximum RPLS-Q size varies by version:
256 (9.1E, 10.0B, 10.1A), 1024 (9.1e04), 512 (10.0b05), 8192 (10.1A02, 10.1B01), 1000000 (10.2B08, 11.2, and 11.3)

To understand the best Replication Communication Area size for the environment, refer to Article:

If the replication source is managed by the AdminServer, values higher than 8192 can be used since OpenEdge 11.6.3, 11.7.0, otherwise refer to the workaround described in Article:

Monitoring the RPLS-Q:

1.  With PROMON

The IPC queue (-pica) can be monitored using PROMON (options R&D > 1 > 16) against the source replication enabled database.

Example:

Start a PROMON session against the source database

PROMON > R&D > 1. Status Displays > 16. Database Service Manager

Status: Database Service Manager

Communication Area Size   :      1000000.00 KB

  Total Message Entries   :     9142822
  Free Message Entries    :             914
  Used Message Entries    :   9141908
  Used HighWater Mark     :   9142820           
  Area Filled Count       :           14
  Service Latch Holder    :          -1
  • Used HighWater Mark: indicates message entries have risen to the value recorded at some time due to for example network latency or insufficient bandwith over a transaction activity peak, it does not necessarily indicate the current situation or how often it occurred.
  • The Area Filled Count indicates over the time-period of the metric gathering source database performance was affected due to restricted available pica queue entries, when Free Message Entries in the message queue dropped to 0 and the source database stalled until blocks were processed against the target database freeing up pointers in the queue or the replication server is terminated.  
  • This menu has been further enhanced in later versions. Refer to Article: Enhanced Replication Database Service Manager queue entries  

While the source database -pica queue size can be further increased to compensate periods when the AIW is queuing messages faster than the RPLS can read AI blocks to send to the target. These metrics indicate a re-visit to assisting the replication server's workload during peak transaction activity by:

  • improving network bandwidth,
  • target server performance and
  • target database tuning.

2.  With _DbServiceManager VST
              
Since OpenEdge 11.6 the _DbServiceManager VST can be used to programatically monitor these values. Refer to Article:

Workaround
Notes
Keyword Phrase
Last Modified Date11/20/2020 6:52 AM

Powered by