IP Library Granted Patent US 9,674,293
Granted Patent B2
US 9,674,293 · App. 14/943,669 · Granted Jun 6, 2017

Systems and methods for remote access to IMS databases

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,674,293
App. No.
14/943,669
Granted
Jun 6, 2017
Kind
B2
Abstract

Systems and methods are provided that allow client programs using IMS database access interfaces to access IMS database data available from IMS systems on remote logical partitions and remote zSeries mainframes rather than from a local IMS system. For example, a method may include intercepting an IMS request having a documented IMS request format from a client program executing on a source mainframe system. The method may also include selecting a destination mainframe system and sending a buffer including information from the request from the source mainframe system to the destination mainframe system and establishing, at the destination mainframe system, an IMS DRA connection with the IMS system from the request. The method may further include receiving a response from the IMS system, sending a buffer having information from the response from the destination mainframe system to the source mainframe system, and providing the information to the client program.

Claims (72)

1. A source mainframe computing system comprising:

at least one general processor;

a client program executing on the source mainframe computing system, the client program configured to make an IMS database subsystem request using a documented IMS database connection interface for a local IMS database subsystem; and

a redirect subsystem configured to perform operations comprising:

attaching the client program to the redirect subsystem instead of the documented IMS database connection interface,

receiving the IMS database subsystem request,

normalizing data from control blocks and data blocks included in the IMS database subsystem request so the data is in a contiguous data structure,

selecting a destination mainframe computing system to respond to the request, the selection being based on a map that associates remote IMS database subsystems with corresponding destination mainframe computing systems,

scheduling a communication request directed to the destination mainframe computing system, the request including the contiguous data structure,

receiving a normalized response from the destination mainframe computing system,

converting the normalized response into a format expected by the documented IMS database connection interface, and

providing the converted response to the client program.

2. The mainframe computing system of claim 1 , wherein the mainframe computing system is a first logical partition of a sysplex and the destination mainframe computing system is a second logical partition of the sysplex.

3. The mainframe computing system of claim 2 , wherein the contiguous data structure is sent using Cross-System Coupling Facility (XCF) messaging.

4. The mainframe computing system of claim 1 , wherein the IMS database request identifies a first IMS database subsystem and the response from the destination mainframe computing system is from a second IMS database subsystem, the first IMS database subsystem differing from the second IMS database subsystem.

5. The mainframe computing system of claim 1 , wherein the source mainframe computing system lacks IMS executable code.

6. The mainframe computing system of claim 1 , wherein the client program originates from a CICS transaction processing subsystem.

7. The mainframe computing system of claim 1 , wherein the client program originates from a batch application.

8. The mainframe computing system of claim 7 , wherein attaching the client program to the redirect subsystem instead of the IMS database connection interface includes intercepting an attach request made by an operating system of the source mainframe computing system to attach to the IMS database interface.

9. A computer-implemented method comprising:

attaching a client program executing on a source mainframe system to a redirect subsystem instead of a documented IMS database connection interface for a local IMS database subsystem used in the client program;

intercepting, by the redirect subsystem executing on the source mainframe system, an IMS database request made by the client program via the documented IMS database connection interface;

generating a buffer by normalizing data from control blocks and from data blocks included in the IMS database request;

selecting, by the redirect subsystem, a destination mainframe system to respond to the request;

sending the buffer from the source mainframe system to the destination mainframe system;

creating, at the destination mainframe system, a coordinator controller (CCTL) for the IMS database subsystem identified in the request;

converting the data in the buffer to an IMS Database Resource Adapter (DRA) format,

placing the converted data in an IMS database queue for the IMS database subsystem identified in the request using a connection task established by the CCTL;

receiving a response from the IMS database subsystem;

sending a buffer having the response from the destination mainframe system to the source mainframe system;

converting the response into a format appropriate for the documented IMS database connection interface; and

providing, at the source mainframe system, the converted response to the client program.

10. The method of claim 9 , wherein the method further comprises:

determining, at the destination mainframe system, that the IMS database subsystem identified in the request cannot process the request;

creating, at the destination mainframe system, a coordinator controller (CCTL) for a second IMS database subsystem that is in a data sharing group with the IMS database subsystem identified in the request; and

placing the converted data in an IMS database queue for the second IMS database subsystem using a connection task established by the CCTL.

11. The method of claim 9 , wherein the source mainframe system is a first logical partition (LPAR) of a sysplex and the destination mainframe system is a second LPAR of the sysplex and the buffer is sent using Cross-System Coupling Facility (XCF) messaging.

12. The method of claim 9 , wherein the selection is based on an IMS database subsystem identified in the request and on a map that associates the IMS database subsystem with the destination mainframe system.

13. The method of claim 9 , wherein the request is associated with a z/OS work element and the method includes:

pausing the work element after sending the buffer; and

resuming the work element to perform the converting.

14. The method of claim 9 , wherein attaching the client program to the redirect subsystem includes modifying CICS transaction processing subsystem libraries to redirect the IMS database request from the IMS database connection interface to the redirect subsystem.

15. The mainframe system of claim 9 , wherein the client program is CICS and the IMS database request is a first request and the IMS subsystem is a first IMS subsystem and the method further includes:

intercepting, by the redirect subsystem executing on the source mainframe system, a second IMS database request made by the client program via the documented IMS database connection interface, the second request identifying a second IMS database subsystem;

sending a second buffer including the second request from the source mainframe system to the destination mainframe system;

creating, at the destination mainframe system, a coordinator controller (CCTL) for the second IMS database subsystem;

converting information from the second request to an IMS Database Resource Adapter (DRA) format;

placing the converted second information in an IMS database queue for the second IMS database subsystem using a connection task established by the CCTL;

receiving a second response from the second IMS database subsystem;

sending a buffer having the second response from the destination mainframe system to the source mainframe system;

converting the response into the format appropriate for the documented IMS database connection interface; and

providing, at the source mainframe system, the converted response to the client program.

16. The method of claim 9 , wherein converting the data in the buffer to an IMS Database Resource Adapter (DRA) format includes adjusting pointers within the data in the buffer.

17. A destination mainframe system comprising:

at least one general processor;

an IMS database subsystem including IMS database executable code; and

a redirect subsystem configured to perform operations comprising:

notifying a source mainframe system of the existence of the IMS database subsystem on the destination mainframe, the source mainframe lacking IMS database executable code,

receiving a first buffer from the source mainframe system, the first buffer including information from an IMS database request that identifies the IMS database subsystem in a normalized format,

creating a coordinator controller (CCTL) for the IMS database subsystem identified in the IMS database request,

converting the information in the normalized format to an IMS Database Resource Adapter (DRA) format,

placing the converted information in an IMS database queue for the IMS database subsystem identified in the request using a connection task established by the CCTL,

receiving a response from the IMS database subsystem in the DRA format,

generating a second buffer having information from the response in the normalized format, and

sending the second buffer to the source mainframe system.

18. The mainframe system of claim 17 further comprising a data sharing group, wherein the IMS subsystem is one of a plurality of IMS database subsystems in the data sharing group, and wherein the redirect subsystem is further configured to:

determine that the IMS database subsystem is unavailable;

create a coordinator controller (CCTL) for a second IMS database subsystem that is in the data sharing group with the IMS database subsystem identified in the request; and

place the request in an IMS database queue for the second IMS database subsystem using a connection task established by the CCTL,

wherein the response is received from the second IMS database subsystem.

19. The mainframe system of claim 17 , wherein the source mainframe system is geographically remote from the destination mainframe system and sending the second buffer includes sending the second buffer using a TCP/IP protocol.

20. The mainframe system of claim 17 , wherein the normalized format is a DRA connection format and converting the information includes adjusting pointers.

Assignments (13)
GRANT OF FIRST LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0628 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0568 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052854/0139) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0617 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052844/0646) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0408 →
OMNIBUS ASSIGNMENT OF SECURITY INTERESTS IN PATENT COLLATERAL Recorded Mar 4, 2024
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS RESIGNING COLLATERAL AGENT
To: GOLDMAN SACHS BANK USA, AS SUCCESSOR COLLATERAL AGENT
Reel/Frame 066729/0889 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 1, 2024
From: ALTER DOMUS (US) LLC
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 066567/0283 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Sep 30, 2021
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 057683/0582 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052854/0139 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052844/0646 →
RELEASE OF PATENTS Recorded Oct 5, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.; BMC ACQUISITION L.L.C.
Reel/Frame 047198/0468 →
SECURITY INTEREST Recorded Oct 2, 2018
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE, AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047185/0744 →
SECURITY INTEREST Recorded Jul 27, 2017
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 043351/0189 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 17, 2015
From: LUBRANO, ANTHONY LOUIS
To: BMC SOFTWARE, INC.
Reel/Frame 037063/0383 →