Synchronizing processing of commands invoked against duplexed coupling facility structures
AssigneeInternational Business Machines Corporation
InventorsDennis J. Dahlen, David A. Elko, Steven N. Goss, Steven B. Jones, Michael J. Jordan, Georgette L. Kurdt, Jeffrey M. Nick, Kelly B. Pushong, David H. Surman, Douglas Westcott, Wendell W. Wilkinson
A coupling facility is coupled to one or more other coupling facilities via one or more peer links. The coupling of the facilities enables various functions to be supported, including the duplexing of structures of the coupling facilities. Duplexing is performed on a structure basis, and thus, a coupling facility may include duplexed structures, as well as non-duplexed or simplexed structures.
Drawings
Claims82
A method of synchronizing processing of commands invoked against duplexed coupling facility structures, said method comprising:
issuing a command that is to be processed against a duplexed coupling facility structure, said duplexed coupling facility structure comprising a first structure instance of a first coupling facility and a second structure instance of a second coupling facility;
and
synchronizing execution of the command being processed against the duplexed coupling facility structure.
A system of synchronizing processing of commands invoked against duplexed coupling facility structures, said system comprising:
means for issuing a command that is to be processed against a duplexed coupling facility structure, said duplexed coupling facility structure comprising a first structure instance of a first coupling facility and a second structure instance of a second coupling facility;
and
means for synchronizing execution of the command being processed against the duplexed coupling facility structure.
A system of synchronizing processing of commands invoked against duplexed coupling facility structures, said system comprising:
a command that is to be processed against a duplexed coupling facility structure, said duplexed coupling facility structure comprising a first structure instance of a first coupling facility and a second structure instance of a second coupling facility;
and
at least one signaling engine to facilitate synchronizing execution of the command being processed against the duplexed coupling facility structure.
At least one program storage device readable by a machine tangibly embodying at least one program of instructions executable by the machine to perform a method of synchronizing processing of commands invoked against duplexed coupling facility structures, said method comprising:
issuing a command that is to be processed against a duplexed coupling facility structure, said duplexed coupling facility structure comprising a first structure instance of a first coupling facility and a second structure instance of a second coupling facility;
and
synchronizing execution of the command being processed against the duplexed coupling facility structure.
A method of halting execution of duplexed commands executing within a computing environment, said method comprising:
detecting a resource condition by one instance of a duplexed command, said duplexed command comprising said one instance and another instance;
and
halting execution of at least the another instance of the duplexed command, in response to the detecting.
A method of resolving potential deadlocks, said method comprising:
detecting a potential deadlock between a plurality of commands attempting to latch a plurality of distributed instances of a resource;
determining a command of said plurality of commands that has priority;
and
making available an instance of the plurality of distributed instances of the resource for the command determined to have priority.
1 more element
A method of managing errors detected in processing of commands, said method comprising:
detecting that a command has ended with an error;
and
resetting a value of a current signal group index, in response to the detecting, wherein said current signal group index is usable in processing of one or more subsequent commands.
Where persistent mass storage functionality or persistent mass storage control functionality is redundant: redundant storage or storage space
Life of this patent
Term end not estimated
Application filedUS 09/968,179
Assigned to International Business Machines Corporationassignment of assignor's interest
Published
Description42,043 words
Summary938 words
#This invention relates, in general, to data processing within a distributed computing environment, and in particular, to the duplexing of structures, such as structures of one or more coupling facilities.
#Some distributed computing environments, such as Parallel Sysplexes, today provide a non-volatile shared storage device called the coupling facility, that includes multiple storage structures of either the cache or list type. These structures provide unique functions for the operating system and middleware products employed for the efficient operation of a Parallel Sysplex. For example, the cache structures provide directory structures and cross-invalidation mechanisms to maintain buffer coherency for multisystem databases, as well as a fast write medium for database updates. These are used by, for instance, the data sharing versions of DB2 and IMS, offered by International Business Machines Corporation, Armonk, N.Y.
#The list structures provide many diverse functions. One such list structure function is to provide for high-performance global locking, and this function is exploited by such products as the IMS Resource Lock Manager (IRLM) and the Global Resource Serialization (GRS) function in OS/390, offered by International Business Machines Corporation, Armonk, N.Y. Another list structure function is to provide a message passing mechanism with storage for maintaining multiple messages on a per system basis and a mechanism for notifying a system of the arrival of new messages. This function is exploited by the XCF component of OS/390, which in turn is exploited by numerous multisystem applications for providing a capability to pass messages between their various instances. A third list structure function is to provide for shared queue structures that can be ordered and accessed by LIFO/FIFO ordering, by key, or by name. Workload Manager (WLM), IMS Shared Message Queues and MQ Series, all offered by International Business Machines Corporation, Armonk, N.Y., are examples of exploiters of this feature. While these functions provide examples of the list structure uses, other uses exist.
Brief description of the drawings21 figures
#The subject matter which is regarded as the invention is particularly pointed out and distinctly claimed in the claims at the conclusion of the specification. The foregoing and other objects, features, and advantages of the invention are apparent from the following detailed description taken in conjunction with the accompanying drawings in which:
#FIG. 1 depicts one example of a duplexing model in which a plurality of coupling facilities are coupled to one another via a peer link, in accordance with an aspect of the present invention;
#FIG. 2 depicts one alternative embodiment of a duplexing model, which uses an explicit lock for duplexing;
Detailed description40,571 words
#In accordance with an aspect of the present invention, at least one coupling facility is coupled to one or more other coupling facilities using one or more peer connections. The coupling of the coupling facilities enables a variety of capabilities to be performed, including, but not limited to, the duplexing of coupling facility structures.
#The duplexing of the structures is performed in a manner that is transparent to the users of the structures. That is, when a user of a structure issues a command against the structure, the user is unaware that the structure and thus, the command, are duplexed.
#In one aspect of the present invention, a high-availability design of coupling facility structures is provided by duplexing a desired structure in two separate coupling facilities. This design improves on the recovery times and impacts of existing recovery techniques, while also provides for a consistent recovery design across the various structure types.