Designing to minimize resource contention

One reason to use an MSDB is its fast access to data and high availability for processing.

To maintain high availability, you should design to avoid the contention for resources that is likely to happen in a high transaction rate environment.

The following is a list of performance-related considerations. Some of the considerations do not apply exclusively to MSDBs, but they are listed to give a better understanding of the operational environment.

In summary, programming with FLD logic can contribute to higher transaction rates and shorter response times.

The following examples show how the MSDB record is held in exclusive mode:

Figure 1. First example MSDB record held in exclusive mode
MSG GU, GHU MSDB R1 (begin note 2), REPL MSDB R1, MSG ISRT, SYNC POINT (note 1 and end note 2)

The following notes are for the preceding figure:

  1. MSDB record R1 is held in exclusive mode against:
    • Any MSDB calls except CHANGE calls
    • Any other sync point processing that intends to update the same record
  2. MSDB record R1 is held in exclusive mode against:
    • Any other GH for update
    • Any other sync point processing that intends to update the same record
Figure 2. Second example MSDB record held in exclusive mode
begin figure description. This figure is described in the surrounding text. end figure description.

The following notes are for the preceding figure.

  1. MSDB record R1 is held in exclusive mode against:
    • Any MSDB calls except CHANGE calls
    • Any other sync point processing that intends to update the same record
  2. MSDB record is held in exclusive mode for the duration of the FLD call against any other sync point processing that intends to update the same resource