Browse Prior Art Database

Syncronous Process Suspending in Parallel Environment

IP.com Disclosure Number: IPCOM000123855D
Original Publication Date: 1999-Jun-01
Included in the Prior Art Database: 2005-Apr-05
Document File: 4 page(s) / 169K

Publishing Venue

IBM

Related People

Mori, S: AUTHOR [+5]

Abstract

In the Parallel Transaction Processing System environment, this queuing mechanism allows users to stop accessing target databases synchronously, thus enabling the databases to be maintained while data is being input into the system.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 44% of the total text.

Syncronous Process Suspending in Parallel Environment

   In the Parallel Transaction Processing System environment,
this queuing mechanism allows users to stop accessing target
databases synchronously, thus enabling the databases to be
maintained while data is being input into the system.

   This on-line transaction processing system is configured
in such a way it has one or more queues and transaction data stored
in the queues are processed sequentially by a single task or multiple
tasks.  Each task processes transactions from one queue in exactly
the same way, so the tasks are as indistinguishable as clones.  An
overview of the system is shown in Figure 1.  A Qin task stores
transaction data in a queue.  Qout tasks process transaction data
from the queue in parallel.  The system includes a Qin Control
Database and a Qout Control Database with some controlling data.
  1.  Previous queue-controlling mechanism
      The previous queue-controlling mechanism is shown in
      Figure 2.
  The Qin task stores transaction data in sequential order, updating
the Qin Pointer (as shown in Figure 2(1)).  The Qin Pointer shows the
position of the latest queue-in transaction data stored in the Qin
Control Database.
  The Qout task has two main mechanisms: transaction reservation and
transaction processing.  In these mechanisms, the Qout task controls
two kinds of pointer and a counter.  One pointer is a Qout Pointer,
and the other is a Reservation Pointer.  The Qout Pointer shows the
last reserved transaction, while the Reservation Pointer shows the
starting point of reservation.  The Reservation Counter counts
reserved transactions.  There is one Qout Pointer for each queue, and
one Reservation Pointer and one counter for each Qout task.  This
three information is stored in the Qout Control Database.
  The transaction reservation and transaction processing of the Qout
task are performed as follows (see Figure 2).  Steps 1 to 3 are for
the transaction reservation and steps 4 to 5 are for the transaction
processing.  1.  A Qout task sets the lock of the Qout Pointer in
order to prevent updating by other tasks.  The Qout Pointer points to
TRX2 at this time (as shown in Figure 2 (2)).  2.  The Qout task can
reserve transaction data from the next the Qout Point er to the Qin
Pointer.  In figure 2, it reserves from TRX3 to TRX6.  The
Reservation Pointer is now set to TRX3, the Reservation Counter is
set to 4 (as shown in Figure 2 (4)), and the Qout Pointer is set to
TRX6 (as shown in of Figure 2 (3)).  3.  The Qout task releases the
Qout Pointer.  4.  The Qout task processes transaction data according
to the Reservation Pointer and  the Reservation Counter information.
5.  After the Qout task has processed all reserved transactions, it
starts reserving transaction data again.  During steps 1 to 3,
another Qout task cannot enter the reservation process phase and wait
for the Qout Pointer to be released.  The lockin...