the publication of the idms user association

24
1 The CA-IDMS Database and Applications User Association http://www.iuassn.com October 2010, Number 73 INSIDE THIS ISSUE Introduction from Bill McCracken...1 Message from International Chair ...2 Letter from the Editor...2 Realizing the Benefits of Server CA IDMS” R17...3 “CA World Corner”...4 IDMS User Association at CARE 2010...5 Database Segmentation...7 Remote Attendees at CMUG...10 Faulty CA Product 25 Years On:...11 CICS Threadsafe for IDMS Users...13 IDMS Release 17 Migration Challenges...14 IDMS Release 18 Status...17 CA IDMS™ R16 – New End of Service Date!...17 CA No Longer Distributing Some Source - Clarification...18 Explaining “Deadlocks” to the Layman...18 Space Management Locks...19 Agenda of the BIUA, Thursday October 28th...19 Is IDMS r17 z/IIP Exploitation Right for You?...20 Introduction to Relational Databases and SQL...21 FAQs About CA IDMS™ Indexing...23 THE publication of the IDMS User Association INTRODUCTION FROM BILL MCCRACKEN, CEO CA TECHNOLOGIES I am pleased to introduce the latest issue of Connections to our international community of CA IDMS users. As you know, the Mainframe’s resurgence has been driven by immense pressure to meet key business demands while minimizing cost. The security, efficiency and stability of the Mainframe make it the platform of choice for supporting some of the biggest and most transaction- intensive workloads in the industry. With its 30-year record as a mainstay of the data center, the mainframe is enjoying renewed prominence as organizations seek to both manage mission-critical business information and support new technology approaches like cloud computing. At CA Technologies, we continue to make major investments in our Mainframe 2.0 strategy and deliver innovative technology to help customers leverage their investments and increase their business agility. Because you depend on CA IDMS to manage critical data and drive business intelligence projects, we have modernized it to support today’s applications, increased integration with CA products for better administration, management and security, and made enhancements focused on lowering total cost of ownership by capitalizing on new hardware and software technologies like IBM’s zIIP specialty processor. We will continue to support new releases of IBM hardware and firmware, and leverage new capabilities to help you find the most cost-effective ways to meet SLAs. In an ever-changing IT industry, the mainframe continues to provide the power and performance that drive business success. On behalf of everyone at CA Technologies, I want to thank you for your support. We look forward to helping you make the most of the Mainframe. CA IDMS/DB r17 is a proven, reliable, high-performance, Web-enabled DBMS for IBM System z that provides unparalleled business value for hundreds of enterprises

Upload: others

Post on 29-Nov-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

1

The CA-IDMS Database and Applications User Association

http://www.iuassn.com

October 2010, Number 73

INSIDE THIS ISSUE Introduct ion from Bi l l McCracken...1

Message from Internat ional Chair . . .2

Letter from the Editor.. .2

Real iz ing the Benef i ts of Server CA IDMS” R17...3

“CA World Corner ”.. .4

IDMS User Associat ion at CARE 2010...5

Database Segmentat ion.. .7

Remote Attendees at CMUG...10

Faulty CA Product 25 Years On:.. .11

CICS Threadsafe for IDMS Users.. .13

IDMS Release 17 Migrat ion Chal lenges.. .14

IDMS Release 18 Status.. .17

CA IDMS™ R16 – New End of Service Date!. . .17

CA No Longer Distr ibut ing Some Source - Clar i f icat ion.. .18

Expla ining “Deadlocks” to the Layman...18

Space Management Locks.. .19

Agenda of the BIUA, Thursday October 28th.. .19

Is IDMS r17 z/I IP Exploitat ion Right for You?.. .20

Introduct ion to Relat ional Databases and SQL...21

FAQs About CA IDMS™ Indexing.. .23

THE publication of the IDMS User Association

INTroDUcTIoN from BIll mccrackEN, cEo ca TEcHNologIESI am pleased to introduce the latest issue of Connections to our international community of CA IDMS users. As you know, the Mainframe’s resurgence has been driven by immense pressure to meet key business demands while minimizing cost. The security, efficiency and stability of the Mainframe make it the platform of choice for supporting some of the biggest and most transaction-intensive workloads in the industry. With its 30-year record as a mainstay of the data center, the mainframe is enjoying renewed prominence as organizations seek to both manage mission-critical business information and support new technology approaches like cloud computing.

At CA Technologies, we continue to make major investments in our Mainframe 2.0 strategy and deliver innovative technology to help customers leverage their investments and increase their business agility. Because you depend on CA IDMS to manage critical data and drive business intelligence projects, we have modernized it to support today’s applications, increased integration with CA products for better administration, management and security, and made enhancements focused on lowering total cost of ownership by capitalizing on new hardware and software technologies like IBM’s zIIP specialty processor. We will continue to support new releases of IBM hardware and firmware, and leverage new capabilities to help you find the most cost-effective ways to meet SLAs.

In an ever-changing IT industry, the mainframe continues to provide the power and performance that drive business success. On behalf of everyone at CA Technologies, I want to thank you for your support. We look forward to helping you make the most of the Mainframe.

CA IDMS/DB r17 is a proven, reliable, high-performance, Web-enabled DBMS for IBM System z that provides unparalleled business value for hundreds of enterprises

2

mESSagE from INTErNaTIoNal cHaIr By Linda Casey

lETTEr from THE EDITorWell here we are – a month late – but on schedule for the revised schedule – in accordance with best project Management principles: Set extremely low customer expectations and then try to do the very little bit that you promised!

In retrospect we seem to have another very full issue for you – so we hope that you will find that it was worth the wait. On the news front, since the last edition of “IDMS Connections” we have had: CARE and CA World 2010, May Mainframe Madness, announcement of CA IDMS Release 18.0 Beta cycle, Release 17.0 of IDMS Server, and the launch of the new CA Portal – a single web presence for Support, User Communities, and personally tailored “My CA” pages.

The IUA has been busy trying to populate the IUA/EIUA web presence at the new CA User Community portal with lots of useful content, for example: the new format User Contributed Library has been uploaded, you can find the last 12 “soft copy” editions of “IUA/IDMS Connections”, as well as this edition – perhaps you even downloaded this edition from the user Community portal?

You can view and download this year’s CA World 2010 presentations http://caworld.ca.com/talk/presentations !

Talking about what to find, and where, on the web – the new CA Portal for Support and User Communities are at http://support.ca.com , and of course the existing IUA web presence with links to the archives of IDMS-L and back issues of “IDMS Connections” is: http://iuassn.org !

Here goes – hoping that each of you will find some value in this issue of “IDMS Connections”. If you don’t enjoy the experience, please feel free to provide feedback about what we could do differently. The last piece of feedback we had was that the publication name mystified some people – so we changed the name to “IDMS Connections”! What else can we do for you – the IDMS User Community, whether you are part of IUA, EIUA, BIUA, UKIUA or OZIUA?

That’s all there is – because there is no more!

Gary Cherletmailto:[email protected] Justice Technology Services (Department of Justice - South Australia) IUA Board Member Responsible for IDMS ConnectionsPresident Australian IDMS Database User Group (OZIUA)

Community…past, present and future.

Social media is all the rage these days; Facebook, MySpace, LinkedIn, Twitter, and on and on. We see it at home, at work, on our phones, in advertising. It’s everywhere. But at the root of all of these tools is the idea of community and connections. As members of the IUA, the idea of community isn’t new to any of us. We’ve been connected in community for years. It’s our strength as a community that supports, promotes and influences the IDMS product line and through our strength as a community that we support one another. Long before the new social media was a blip on the screen, the IUA had strong community bonds. We connected to one another through conferences, newsletters, emails and through our LISTSERV list, IDMS-L. I would venture to say that the IUA has been in the forefront of community building with our strength as an organization. I’m told repeatedly that our user community is unique among other organizations in our commitment to our shared interest (IDMS) and each other.

We live in a time of a tough global economy. Many cannot travel to conferences or educational offerings. So we continue turn to one another for support and guidance. The amount of informal learning that happens over the list is astounding. Over the past year, we’ve seen requests of ranging from help for DBAs new to IDMS, to shops expanding their access to IDMS to modernize their applications, and everything in between.

As our community expands and changes, the IUA as an organization must review how we serve our community and what makes sense for the future; how can we modernize our organization? In the coming months, we will be looking at ways to create a cost effective, inclusive

“face lift” for our community. This is not an exercise the board can undertake alone. I call on each and every one of you to think about how the IUA can serve you and our membership into the future and give us your input.

At the CARE conference this past spring, CA has unveiled their new community website. This site is free of charge to the IUA and its members. The IUA has begun to have a presence there, thanks primarily to Gary Cherlet who has worked hard on migrating much of the archival information from our website. I invite all of you to checkout our new community there.

3

rEalIzINg THE BENEfITS of ca IDmS™ SErvEr r17Reprinted from “CA Tech Insider: CA IDMS”

Copyright © 2010 CA. acknowledged

[Editor’s note: having mentioned IDMS Server 17.0 in “Letter from the Editor” – I thought I might include this release from CA - Gary]

CA IDMS Server couples standards-based Web access with proven technologies to help your organization achieve the objectives of secure, optimized, high-performance access to your CA IDMS mainframe resources from various distributed platforms. The 17.0 release of CA IDMS Server contains several new features that will be beneficial to CA IDMS Server users improving performance, scalability, platform support, standards compliance and usability. Below are descriptions of the new features contained in CA IDMS Server r17:

ODBC Wire ProtocolSimilar to the JDBC Type 4 interface, CA IDMS Server's ODBC Driver now provides direct communications from Windows to your CA IDMS CV, eliminating the need for CA CCI. This shortened communications path improves both responsiveness and reliability.

64-bit SupportAs more and more 64-bit products are seeing mainstream use, the demand for a 64-bit version of the CA IDMS ODBC Driver has been ever on the increase. This demand is satisfied with the r17 version of CA IDMS Server. Unlike the transition from 16 to 32-bit Windows (where 32-bit applications could call 16-bit applications and vice-versa), 64-bit applications cannot make calls to functions residing in 32-bit DLL's in Win64.

ODBC 3.5Release 17 of CA IDMS Server now supports ODBC 3.5, which is the current version of the ODBC specification from Microsoft. Most ODBC applications are now written using one of the ODBC 3.x specifications.

JDBC 4.0CA IDMS Server r17 has implemented JDBC 4.0, the latest version of the JDBC API architected by Sun Microsystems (now Oracle) and the Java Community Process. This provides compatibility with newer releases of popular application servers, such as WebSphere Application Server 7.0 and Weblogic 10.3.

Named ParametersThe named parameter feature allows JDBC or ODBC programs to bind values to SQL CALL statement parameters using the parameter names specified in the CA IDMS CREATE PROCEDURE statement.

Hibernate DialectHibernate is an open-source product, distributed by Red Hat, that simplifies Java development by taking care of the details of data storage and retrieval. With Hibernate, CA IDMS works in much the same way as any other relational DBMS and therefore allows Java programmers to be productive without extensive CA IDMS training or expertise. A Java class called a dialect specifies IDMS-unique properties and is now included as part of CA IDMS Server r17.

Scrollable Result SetsA scrollable result set allows a cursor to move both forwards and backwards, or to be set to a specific row. An updateable result set can be updated using Java methods instead of SQL DML statements. CA IDMS Server r17 supports scrollable result sets by caching rows fetched from CA IDMS, and supports updateable result sets when used with an implementation of the CachedRowSet interface, such as the one provided with the Java 1.6 run-time library.

Procedure Result SetsCA IDMS r17 introduced a feature in which SQL procedures can return result sets, not just a single set of output parameters. CA IDMS Server r17 makes this feature available to JDBC and ODBC programs. This means that sites no longer need to code table procedures in COBOL, Assembler or PL/I to return multiple rows to a JDBC or ODBC program.

Simplified ConfigurationIn line with CA's efforts to simplify the management of its products, the CA IDMS Server ODBC Administration tool has been enhanced to simplify the creation and management of your IDMS Data Sources.

These are just a few of the many features provided in CA IDMS Server 17.0. CA IDMS Server r17 can be installed alongside any other prior version of CA IDMS Server, allowing users to gently transition to the new version of the product. To get specific detailed information on these and other features, please see the CA IDMS Server r17 Product Brief. CA IDMS Server 17.0 is now Generally Available (GA) and can be downloaded from CA Support Online.

Copyright © 2010 CA. All rights reserved.

4

(continued on page 5)

“ca WorlD corNEr”

CA World 2010CA World returned to Las Vegas this past May, and to the beautiful Mandalay Bay Resort and Casino. The week full of technical sessions began with a full day free pre-conference education “CA IDMS Performance and Tuning” on Saturday. During a morning of keynotes on Monday, CA IDMS customer CAIXA received the

“Impact” award as one of the three MIP awards given out at the Mainframe Focus area opening. Then Art Cartier, the new Vice President of Software Engineering for the CA IDMS product line, presented CA IDMS Status and Plans with Greg Beedy. They reinforced CA’s commitment to CA IDMS. They discussed where CA IDMS fits into the MF 2.0 strategy, what’s available today within the product line and what’s coming next. Greg highlighted application modernization which was a big theme in our track this year. His modernization approaches session, with co-speaker Sergio Medeiros of CAIXA, laid the ground work for the rest of the modernization sessions that followed from CA and other partners, and ending with a session on moving IDMS application to SOA from Javier Sotela of Evertec, Inc.

Expanding on what’s available in the product today, we had several customer sessions on experiences with r17. Steve Terry from BT gave an informative session on their production experiences with IDMS r17, including use of the z/IIP feature and TUNE INDEX utility. Chris Hoelscher from Humana gave a session on their improved results using the zIIP feature. Gary Cherlet from Justice

Technology Systems enlightened the audience as he consolidated 13 years of IDMS system tuning into 60 minutes. Laura Rochon from Ajilon Consulting showed how TCP/IP can be used to save money.

Judy Dillman’s CA IDMS r18 Preview was a highlight of the conference. She gave a preview of what will be coming in CA IDMS 18.0 which included an overview of the new features and described the integration with CA Mainframe Software Manager. Several other CA sessions were presented including CA IDMS Server r17 Improves Performance and Scalability and Living with Very Large CA IDMS Databases.

NetworkingAlong with the great technical content in the IDMS track, there were many opportunities for networking. CA Support and Development staff were available in the Technical Campground for discussion of any issue. Many clients took advantage of this opportunity to talk one-on-one with the staff. Once again we held our Birds of a Feather session where we filled the room with IDMS customers and filled the hour with some great discussions on a variety of topics. New this year for the Mainframe Focus area was the MIPS lounge. This lounge, located next to the Technical Campground and near the session rooms, offered a place to sit and network with peers and take advantage of the some comfortable furniture while watching May Mainframe Madness presentations on monitors around the lounge.

EventsCA World was full of wonderful events for attendees. Maroon 5 gave a private concert to all the attendees on the Beach at Mandalay Bay. It was a beautiful night to relax, put on your CA Technologies flip flops and mellow out to some music with your toes in the sand and a cocktail in hand. But Mainframers had an exclusive event on Wednesday night at the House of Blues that was the envy of all other focus areas. “Our Roots Run Deep” was the theme for the night featuring music by Lee Rocker of the Stray Cats. IDMS was well represented on the dance floor!

May Mainframe MadnessThere was much more madness in May than just CA World. CA May Mainframe Madness 2010 was indeed the virtual event that changed everything. CA again dedicated the entire month of May to the mainframe and to helping you get even more value from this amazing platform, with a calendar full of activities and new live content every

5

CA World Corner... cont’d from page 4

weekday in May. Several of the panels at CA World were also simulcast live like the “Exploiting zIIP and zAAP” panel discussion. CA IDMS had a full slate of session available to complement its CA World offerings. Chris Hoelscher of Humana graciously volunteered to record his CA World session “Humana Adds Some z/IIP to its CA IDMS Processing” as well as a session on CA IDMS r17 Migration Challenges. Other CA IDMS sessions available were on topics TUNE INDEX, PRINT INDEX, CA IDMS Health Checks, CA IDMS Server r17, CA IDMS DML Online and CA ADS Alive. If you missed CA World you can still hear about CA IDMS Status and Plans from Art Cartier and Greg Beedy. This session and all the CA IDMS May Mainframe Madness sessions can still be viewed at http://www.ca.com/us/products/collateral.aspx?cid=200360.

So as I look back on this successful CA World, I must recognize Steve Rundle from BT for all his contributions to the CA World planning for the IDMS track as the customer committee member. He always provides great input into the planning process and helps shape the agenda. Thanks again to all the customers who presented sessions at CA World. The conference would not have been a success without you. So mark your calendars for the next CA World, scheduled for November 13-17, 2011. You can view and download this year’s presentations on http://caworld.ca.com/talk/presentations.

Carla PereiraCA IDMS Track Leader

lET’S cElEBraTE...another successful CA World, and to celebrate the ongoing resurgence of the Mainframe! A great buzz for me was being a part of CARE and CA World yet again. It just seems to keep getting better!

IDmS USEr aSSocIaTIoN aT carE 2010

130 attendees representing 116 groups and 16,530 users

Community 2.0 - forums, User Communities and Regional User Groups all rolled into the “Community 2.0” presence on the CA Portal

Don Tapscott - the digital generation and the need to embrace social networking into the business model of corporations, government - and of course User Communities

1997 “Growing Up Digital”

2010 “Grown Up Digital”

Transformation of web from “presentation and content” to “computation and services”

There is a need for IT executives and professionals to understand the transformation and what it means to business and government

Increase IUA use of User Communities portal at http://ca.com/community

Need to continue to maintain use of the List Server, but integrate it with Message Board and/or blogs on the new User Community portal

Emphasis on Web 2.0 and inclusion of social networking tools, Community Management tools and other new and potentially useful functionality

Importance of incremental change to things people are comfortable with

Applies to Community Management

Applies to Community Management tools

IUA needs to be careful about member reliance on IDMS-L

New User Community portal means better membership management between RUGs and PLCs - easier for members - only need to sign up once and become registered at all levels - means members can participate at both a Regional and International level - means IUA Board can manage members and mailing (for example) at an International and/or Regional level

Social Media thoughts for the dayWhat’s your personal brand?What’s your professional brand?Be the best that you can be!

Use IDMS Connections to promote use of CA User Community portal and the http://iuassn.com link

Regular communications to members is a must!

Start fortnightly posts on IDMS-L (Communications portfolio):

Encourage members to register at CA User Community portal

Monthly activity updates

IDMS Connections announcements

IUA news - now (e.g. Board elections at CA World) etc...

Recruitment and placement web sites should have links to IUA web presence

IDMS’ers to show IUA membership/participation on resumes

(continued on page 6)

6

IDMS User Association at CARE 2010... cont’d from page 6

IT thought for the dayIf 80-90% of the IT budget is required to maintain the status quo - how can you innovate?Can you afford to do the risky things?

CARE 2010 Blue Slipping Exercise“Blue Slipping” is a technique used by the US Congress to get down to the heart of an issue in very quick order. The technique was applied during CARE to find out what the critical areas of concern and primary focus areas are for each User Community. Below is the outcome of the IDMS User Community “Blue Slipping” exercise:

IUA ObjectivesMeeting place for people with common interests (IDMS)

Collate relevant information

Share relevant information

CA’s Help to IUASpeakers

Web content

Cross posts (list server to CA Portal)

Partner to CAHelp users to help themselves

Reduce reliance on CA

Feedback on products and documentation (and training?)

Product ChangeDARS process

VolunteersWhipping?

CollaborateE-mail via list server

Newsletter

EngageHow to engage user community

Provide useful knowledge

Provide useful content

Facilitate meaningful exchanges

Between users

with CA

My IDMS “Stream” at CA World 2010Great keynotes: Technology (Ajei Gopal), leadership and creativity (James Cameron), ongoing resurgence of the Mainframe (Dayton Samerjian)

Excellent IDMS stream - track leader Carla Pereira - stream keynote by Art Cartier for first time - all the usual suspects (John, Judy D, Dave, Cal, etc) - excellent user sessions

Status and Plans and Release 18 direction - some users have gone from complaining that CA was no longer supporting IDMS to asking CA to either slow the release/upgrade cycle or to allow for a longer sunset clause for most recent “drop support release”

Ongoing resurgence of the Mainframe

New mainframe business picking up in the last 2 years since Mainframe 2.0

Accelerating at 20% year on year

At press conference the mainframe session (Mark Combes) had the best questions and most engaged press of all CA press sessions (including Cloud)

Special interest from European press on rejuvenation of the mainframe

OZIUA wants to try to revitalise its meeting program and membership numbers by trying to expand the CA IDMS focus - to include any and all things Mainframe. Anything in fact that resides on the same LPARs as the IDMS regions run in.

IDMS users should be aware of other technologies beside IDMS. Non-IDMS mainframe users who need to communicate to/from mainframes that have IDMS should be aware of the capabilities in IDMS that can facilitate this communication.

This may or may not be a direction that other RUGs want to follow - but it may be something well worth considering at both the Regional and International level of the IUA - the time has come to broaden the focus to the mainframe in general in order to promote, in our case, IDMS in particular!

Any all feedback from IUA members on these thoughts would be most welcome!

Gary Cherlet (Justice Technology Services)User Group PresidentIUA International Board MemberIUA Board Member responsible for “IDMS Connections”mailto:[email protected]

SEND arTIclEcoNTrIBUTIoNSTo gary cHErlET aT: [email protected]

7

(continued on page 8)

DaTaBaSE SEgmENTaTIoNToday’s CA IDMS databases continue to grow. Among the reasons for this growth may be the addition of new application functionality, business consolidations, or the inability to archive historical data from legacy databases. Regardless of the reason for their growth this expansion creates concerns in two areas; space and time. The concern with space is typically not related to the number of physical devices needed to contain the data but with the number of CA IDMS pages that are available in which a given database can reside. Larger databases also mean that the time required by applications to perform routine processing also increases. This can be especially meaningful when considering batch processes or routine maintenance operations.

This article presents an overview of two types of database segmentation generally referred to as vertical and horizontal segmentation. Although each segmentation implementation is unique by database, the general concepts of these two methods of segmentation provide the basis from which all segmentation strategies are derived.

Before continuing it is important to define the terms ‘CA IDMS segment’ and ‘database segment’. The use of CA IDMS segment in this article will refer to the CA IDMS entity known as a SEGMENT which is created by the ADD SEGMENT command. Within a CA IDMS segment a user defines the files, areas, page group, and their related pages ranges that define the physical implementation of a portion of a database. A database segment will be considered to be a logical grouping of any number of CA IDMS segments and equates to the database view known by the application. A database segment is typically implemented by grouping the required CA IDMS segments within a DBNAME by using the ADD DBNAME statement when creating a DBTABLE.

Vertical SegmentationVertical segmentation is the practice of dividing a database into separate functional portions and is implemented at the area level. Areas within the same functional portion of the database can then be grouped together into the same CA IDMS segment and if desired, each CA IDMS segment defined to the database can be assigned to a different page group.

A standard implementation of CA IDMS limits any one database to a finite range of database pages which is in the area of 16 million pages if a standard dbkey structure is used. To remove this restriction CA IDMS provides a feature know as page groups. Areas defined in different page groups are permitted to have overlapping pages ranges. Through the use of mixed page group support a single database transaction has the ability to access areas defined in different page groups creating an almost inexhaustible number of database pages available for use by a database. For details about implementing mixed page group support refer to the Mixed Page Group Implementation article in Volume 72 of the Connections newsletter, dated March 2010.

Vertical segmentation may require some structural database changes due to restrictions enforced by multiple page group support which may in turn cause some application changes. However the use of multiple page group support allows the database to appear to the application at run-time as a single entity. The restrictions currently enforced by mixed page group support are as follows:

Sets, indexes, and referential constraints may not cross page group boundaries

Record names must be unique

Unqualified FIND/OBTAIN DML commands should not be issued within mixed page group run-units.

To provide a simple illustration of vertical segmentation consider a multi-national corporation that has an Order-Entry database that is approaching the approximate 16 million page range limitation. This database is composed of CA IDMS areas that break down into three functional areas; customer data, order data, and invoice data. All areas are defined in one single CA IDMS segment that uses the default page group value of 0 for the segment.

The first step to implementing vertical segmentation on the Order-Entry database is to identify the functional group into which each CA IDMS database area belongs. Any cross-area sets between areas identified as being in different functional groups must be replaced with some other construct which will allow the run-time processing using these sets to be retained. Almost always these types of changes will require some level of application changes. This highlights the fact that any form of database segmentation is not just a Database Administrator function but is a task requiring the commitment of a site’s entire organization.

8

Database Segmentation... cont’d from page 7

(continued on page 9)

The following diagram is an example of a set relationship which crosses area boundaries where the areas are in different functional areas or ‘vertical segments’.

Figure 2One option would be to replace the CUST-ORD set with a system-owned index where the new index would reside in an area to be included in the ORDER vertical segment. In this case the name of the index could still be CUST-ORD to minimize the scope of the application changes.

Figure 3A second option would be to add a ‘dummy’ CUSTOMER record into the ORDER-AREA area. This record would only contain the calckey of the corresponding CUSTOMER from the CUSTOMER-AREA area and would be used to connect all of the ORDER records owned by each customer.

Figure 4The second restriction imposed on vertical segmentation by mixed page group support is that all record names must be unique. Schema requirements for an unsegmented non-SQL database would already impose this restriction so it is typically a non-issue when implementing a vertical segmentation strategy. However we will see the effect of this restriction while examining the topic of horizontal segmentation.

Finally care should be taken to avoid all unqualified DML commands used by the associated application within mixed page group run-units. These commands would be FIND/OBTAIN DB-KEY commands that do not include a record name. Although it is possible to use these commands they do possess the possibility of returning the wrong record based on run-unit currency at the time

they are issued. It is best to insert the name of the desired record type into each of these commands to avoid the potential of improper database accesses.

The segment used to define the database to the physical environment should then be broken into three separate CA IDMS segments. Each segment definition will contain only those areas participating in that segment’s functional group. Assuming a standard database key structure, each vertical segment will have approximately 16 million database pages available to it for a total of about 48 million pages for the entire database.

Horizontal SegmentationVertical segmentation can provide a site with significant relief when approaching the maximum number of database pages available in which that database can reside. However the applications using that database must still view and process it in its entirety. As databases grow or a site’s processing needs evolve, the amount of time required to perform standard application processing may become too large for the available window. A horizontal segmentation strategy allows the database to be divided along some site specific criteria creating multiple yet functionally equivalent databases. These smaller databases can be processed independently of each other based on a site’s requirements.

Horizontal segmentation begins with the selection of the segmentation criteria. The segmentation criteria used is based on the application requirements and may consider divisions along geographic boundaries or company divisions. Sometimes time/date relationships are used such as a separate database segment per business or calendar year, while in other cases some sort of artificial segmentation key is created. For our example we will continue to use the Order-Entry Database with the scenario of a corporation that transacts business in Europe and North America. Initially they created a single database structure to support their business in each geographical location. However the requirement to delay all batch processing until the North America online day is completed has made it very difficult to finish that processing before the next European online day begins.

The database structure must be examined to identify any structures that will be common to both the Europe and North America segments. These structures may include records that are used as tables to control processing or may be corporate level records that summarize the

CUSTOMER CUST-NUM CALC CUSTOMER-AREA

CUST-ORD SORTED NPO ORD-NUM

ORDER ORD-NUM CALC ORDER-AREA

CUSTOMER CUST-NUM CALC CUSTOMER-AREA

ORDER ORD-NUM CALC ORDER-AREA

CUST-ORD I MA ASC CUST-NUM, ORD-NUM ORD

-INDEX-AREA

CUSTOMER CUST-NUM CALC CUSTOMER-AREA

CALC ORDER-AREA

ORDER ORD-NUM CALC ORDER-AREA

CUST-DUM CUST-NUM CALC ORDER-AREA

CUST-ORD SORTED NPO ORD-NUM

9

Database Segmentation... cont’d from page 8

(continued on page 10)

high-level business of the organization. These records must be removed from CA IDMS areas in which records that will be unique to a given geographical segment will reside and must be placed into their own areas. These common areas will ultimately be defined to the physical environment through their own CA IDMS segment definitions. In addition, if any set relationships exist between records moved to the common segment and records that will be in a geographical segment they must be replaced with alternate structures as discussed under the topic of Vertical Segmentation.

The following diagram is a simple representation of the Order-Entry Database following the initial separation along the geographical lines.

It should be noted that vertical segmentation can be used in conjunction with horizontal segmentation as space requirements dictate. CA IDMS segments EUROPE, NORAMER, and COMMON could each be defined as being in different page groups. In the same manner the three functional portions of each geographical database segment (EUROPE and NOAMER) could be defined in their own CA IDMS segments which could be assigned to different page groups as long as their separation conforms to the rules of mixed page group support.

The desired end result of our horizontal segmentation is that a single version of the application programs will be able to process either the Europe portion of the database or the North America segment using the same schema/subschema specifications. This is accomplished by supplying the appropriate DBNAME to the programs at run-time. Each DBNAME indicates which segments are to be referenced during processing. The following is a simplified example of the definition of the DBNAMEs.

ADD DBNAME EURDB

INCLUDE SEGMENT EUROPE

INCLUDE SEGMENT COMMON;

ADD DBNAME NAMDB

INCLUDE SEGMENT NORAMER

INCLUDE SEGMENT COMMON;

With the above segmentation of the Order-Entry Database and the defined DBNAMEs the organization will now be able to start batch processing for Europe as soon as the European online window closes and while the North American online window is still open. In the same manner the North America batch processing will not have to be completed before the next morning’s European online window opens. However there are a few items that must be taken into consideration to make the horizontal segmentation successful.

It is extremely important that no application process update the database areas assigned to the COMMON segment while performing update operations against either the EUROPE or NORAMER segments. To do so would compromise the independence between the database segments that the horizontal segmentation strategy hoped to provide.

As an example let’s say that for a given day the batch processing for Europe had been completed and North America’s batch processing was nearing completion. However both of these processing threads update records in the COMMON segment while updating their respective segmented areas. Some one then realizes that the Europe batch processing was run with incorrect input parameters requiring that processing to be rolled back and Europe’s batch jobs to be rerun. Since updates were made to the COMMON segment it is necessary to include that segment as part of the ROLLBACK operation. Rolling back the COMMON segment will also roll out any updates that the North America processes made, forcing the NORAMER segment to also be included in the ROLLBACK operation. You are now in or near the start of both online windows with no batch processing completed.

All updating of the COMMON segment should be isolated from update processing of the other geographical segments and scheduled at a time when they will not affect the independence of the other database segments. When the need to update the COMMON segment concurrently with another database segment is discovered it may be necessary to remove those affected records from the COMMON segment and replicate them in each geographical segment. Sometimes there is truly a singular entity that must reflect some result of both batch cycles. In this case you could retain that information in an intermediate file and update the COMMON area when all other required processing is completed. If either of these methods were used our scenario would have resulted in the Europe batch processing to be rerun and their online window being delayed but there would have been no impact on the North America environment.

Another concern is the CA IDMS restriction that a transaction cannot have multiple areas with duplicate names or records with non-unique names within a non-SQL database. This is similar to the restrictions mentioned earlier when using mixed page group support. As a result it is not allowed to access the areas defined to the EUROPE and NORAMER segments in the same database transaction. If there is a requirement to report

10

Database Segmentation... cont’d from page 10

WWW.IUaSSN.orgyoUr porTal To IUa SErvIcES aND IDmS

coNTacTS

on all occurrences of a particular record type from both of the separated database segments it will be necessary to extract the data using multiple database transactions. This could be done with a single program that issues two BIND RUN-UNIT commands differentiated by the unique DBNAMEs or could be done by two program executions extracting data to intermediate files which are then merged to produce the desired report.

Finally vertical and horizontal segmentation can reduce the amount of time required to do standard maintenance operations.UNLOAD/RELOADs, BACKUPs, and index tuning or rebuilds can run in shorter periods of time due to reduced volumes of data. For example, if the business in Europe grows unexpectedly the expansion of areas associated with the EUROPE segment can be done without having to include the data associated with North America.

SummaryVery large CA IDMS databases can certainly pose a number of problems but these problems typically fall into the areas of space and processing time. CA IDMS provides the facilities to implement vertical and horizontal segmentation to eliminate these problems. The general concepts of how to accomplish these strategies are not in themselves complex. However each database and application present unique conditions that often require some creative implementations of the basic concept. Unfortunately these implementations will often go beyond changes involving just a site’s Database Administrator and will include the application staff and will sometimes result in visible changes to the organization’s users. As a result it is important to have the entire organization committed to these projects for them to enjoy their greatest level of success. Although not always simple these modifications provide sites with the ability for almost unlimited growth over the foreseeable future.

Dick Weiland is a Senior Systems Engineer for CA IDMS Level II Support working out of the CA Lisle office. He began working with CA IDMS in 1977 as a DBA and joined Cullinet in 1981 in the Field Support organization. He moved to Level II Support in 1988 and is responsible for the DBMS engine and various utilities.

rEmoTE aTTENDEES aT cmUgFrom Communications of IUA Board

Kay Rozeboom sent the following “thank you” to those who had organized a “Live Meeting” broadcast of the Chicago IUA Regional User Group (CMUG) – the guts of the message were:

“Thanks to Glen Guenther and CA staff for allowing others to attend the Chicago user group meeting today via Live Meeting. The sessions were timely and interesting. This is an easy and inexpensive (free!) way to get additional training. I hope there will be more sessions like it. Kay Rozeboom”

Diane Montstream, from the IUA Board, followed up with Craig McGregor (the RUG Chairman) with a question about numbers – by way of determining whether IUA should be having more meetings organized along the same lines – a “live meeting” that is “broadcast” using

“Live Meeting”, or similar technology.

Below is Craig’s reply – sounds pretty positive to me! Cheers – Gary

From: McGregor Craig - cmcgre [[email protected]]Sent: Friday, 17 September 2010 2:09To: Diane Montstream; IUA BoardonlyCc: McGregor Craig - cmcgre; Bonnan Cindy - cbonna; Guenther Glen - gguentSubject: RE: Thanks!

My understanding is that one point we had 17 people on the webcast itself. The lowest number of people on the webcast was 10. There was a total of 10 people in the CA Lisle office yesterday. Therefore I would say we had 20 to 27 people in attendance. I thought that was pretty good for our very first webcast!!!!

Craig S. Mc Gregor | Mainframe Database System Programmer Global Technology Services630-944-4899 office | 630-944-8948 fax3333 S Finley| Downers Grove, IL, 60515-5727 | USA | [email protected]@Iowa.Gov

11

faUlTy ca proDUcT 25 yEarS oN:CA Support “Rules” OK

In years gone by CA, amongst other vendors, had received few kudos for product support. I am pleased to say that from what I can see in Australia, and from the CARE conference and the last 6 CA Worlds that this situation has seen a dramatic turn around. I thought that CA users might enjoy the following exchange of e-mails between a dissatisfied customer and CA – which serves to illustrate how seriously CA takes Customer Satisfaction!

From: Cherlet, Gary (JTS)Sent: Friday, 20 August 2010 1:07 PMTo: ‘[email protected]’; ‘[email protected]’; ‘Cartier, Arthur J’; ‘Kent, Lisa’Cc: Joyce, Barry (JTS); ‘DATA ENG SA IDMS’; ‘IUA Boardonly’Subject: Faulty CA Product - 25 years on

Please find attached a photo of a CA product recently passed on to me by a work colleague.

Barry has used this product for years without incident until - as you can see from the picture – it has recently ceased to perform up to expectations, as per original design specifications.

Are you able to help him out?

TIA - kind regards – cheers – Gary

Gary CherletJustice Technology ServicesDepartment of Justice, SA Government

“””” Telephone +61 (0)8 8226 5199 @@ Facsimile +61 (0)8 8226 5311 > Mobile +61 (0)41 333 1613 ~~ Mailto:[email protected] says: Grab them by their data - and their hearts and minds will follow!

From: Cartier, Arthur J [[email protected]]Sent: Friday, 20 August 2010 9:57 PMTo: Cherlet, Gary (JTS); Catchlove, David; Beedy, Gregory A; Kent, LisaCc: Joyce, Barry (JTS); DATA ENG SA IDMS; IUA Boar-donlySubject: RE: Faulty CA Product - 25 years on

Hmmm…I think this product has been already put through the End-of-Life cycle at CA.

However there maybe an existing PTF we could send you providing you on an extended support plan. Can you

(continued on page 12)

have Barry confirm whether he has an extended support

plan active for this?

Art

Arthur Cartier CA Technologies VP, Software Engineering Tel: +1-860-627-4555 Fax: +1-860-654-1528 Mobile: +1-860-539-4401 [email protected]

From: Catchlove, David [mailto:[email protected]] Sent: Monday, August 23, 2010 9:23 AM To: Cherlet, Gary (JTS); Beedy, Gregory A; Cartier, Arthur J; Kent, Lisa Cc: Joyce, Barry (JTS); DATA ENG SA IDMS; IUA Boardonly Subject: RE: Faulty CA Product - 25 years on Importance: High

Hi Barry,

We are sad to receive your news of poor performance of the CA product in question, as this is an extremely rare occurrence & most disappointing.

Following protracted consultation (read heated discus-sion) relating to the product in question regarding the apparent lack of warranty life (exceeds 90 days liability) and much debate regarding its obvious poor condition revolving around the apparent incorrect servicing & maintenance (especially the clear abuse that the unique & highly intricate ‘Patent Pocket Positioning & Security Locator’ apparatus has suffered (read broken), AND the fact that all the exquisitely applied identification expres-sions (painted words) have been callously maltreated, it has been decided that no refund will be provided.

However, in the interest of superior Customer Rela-tions & Customer Satisfaction, PLUS in recognition of the outstanding loyalty & dedication you have shown toward this product, we feel it only proper to replace it (see photo of the actual new authentic item attached)

12

Faulty CA Product... cont’d from page 11

Please note: This in no way constitutes an admission of

product fault, as it behaves correctly in accordance with the published specification.

Please be advised that this is in recognition of your 25 year extended use is a one-off, & would ask that you keep it strictly confidential, lest there be others in the IDMS Community who would then embark on a similar program of mistreatment over the next 25 years simply to gain a similar replacement, thus provoking a run on this product which we would be unable to satisfy due to the fact the Numbers Painter has long since died (of old age).

To optimize your long term use of this product, you will benefit from exercising extreme care of use, coupled with a regular regime of weekly maintenance including wash-ing in spring water found only in the cave on the eastern side of the upper reaches at approx the 1856’ level of St Mary’s Peak in Wilpena Pound, South Australia with the aid of a Chamois that was purchased in the Back Packers shop at the Base of K2 in the Himalayas will ensure that this product will serve you for a period way past your cur-rent experience.

A replacement has been dispatched to your Wakefield St address.

Yours sincerely

David Catchlove CA Technologies Channel Partner Manager Tel: +61 3 9944 6510 Mobile: +0412 438 160 [email protected]

From: Smith, Brenton [[email protected]]Sent: Thursday, 2 September 2010 10:43 AMTo: Catchlove, David; Cherlet, Gary (JTS); Kent, LisaSubject: RE: Faulty CA Product - 25 years on

Gary

I want to go on record and say that clearly this product has been mistreated and not used in the manner intend-ed! When I sold this (because the brother of our current CA representative could not do so!) it worked!

In addition, I clearly remember issuing the care manual, which states that gloves should be worn at all times when using said product and that it is only good for 15 rulings per week. This has obviously been ignored.

Please look after the replacement.

Brenton Smithca technologiesVice President & Area ManagerAustralia & NZ Tel: +61 2 8898 2860 Mobile: +61 412 892 100twitter:brentoncatech [email protected]

In ConclusionIt goes without saying that with regard to the foregoing we must be careful about what we say so that we don’t violate the confidentiality clauses surrounding the extended warranty for this product! CA might otherwise be inundated with faulty pens, worn out hats, CA World back packs and heaven knows what else?

However, if the measure of a vendor is in its commitment to support – then I think we can safely say that CA measures up – so “CA Support Rules OK”!

Gary CherletMainframe Technical Support AnalystJustice Technology Services

IDmS-l WHErE IDmS TEcHIES mEET

13

cIcS THrEaDSafE for IDmS USErSTerry Schwartz IDMS System & Database AdministratorBeginning with CICS Version 2, applications could execute on TCBs separate from the single threaded QR TCB. Much like multitasking in CA-IDMS this allowed CICS application programs to execute on multiple TCB’s and process concurrently. Thread-safe applications can achieve much higher throughput than single threaded applications.

Until CA IDMS release 17 we in the IDMS world could not take full advantage of thread-safe applications. Before version 17 one could in theory mark the application programs as thread-safe but the IDMS interface calls would still have to switch to execute on the singled threaded QR TCB causing an unacceptable amount of TCB switching overhead. CA IDMS release 17 includes a thread-safe CICS interface that allows eligible applications and their CA IDMS calls to be dispatched on one of the multiple thread-safe TCB’s.

One of our applications is a CICS based green screen application that was averaging approximately 800,000 IDMS task per day. Due to a business change in November of 2009 the number of users of the application almost doubled.

Coinciding with the increase in users came large transaction backlogs in CICS during the peak morning and afternoon online periods.

It seems CICS was at a processing threshold and the increase in volume had pushed CICS over the edge. With all the workload effectively limited to one processor we could not process all the work arriving at the peak times.

It was decided that since CA IDMS was being upgraded to version 17 that we would take advantage of the thread-safe CICS interface

No changes were made to the CA IDMS interface since we discovered that the interface takes the thread-safe mode from the application program that called the interface. Implementing a program as thread-safe requires a changes to the CEDA definition (or the auto-install setup) to change the Concurrency to “Threadsafe” There are some programming techniques that should be observed or thread switching can result;

Thread-safe was implemented on 3-15-2010. The backups in CICS were no longer observed and the peak time CICS transaction queues which caused CICS to hit the max task of 150 were down to 4-5 concurrent task. CICS average response time for all transactions which was ranging from .3 to .55 seconds came down to .2 seconds. The number of deadlocks in IDMS was cut in half and we saw the number of daily task in IDMS go over a million per day demonstrating the latent demand we had in the system.

In TMON we were able to see all the application transactions executing on R8 TCB’s which are the TCB’s CICS uses for thread-safe programs.

Conclusion; Thread-safe was an overwhelming success. We did see slightly higher CPU usage in CICS (1-2 percent) but this was expected and was a perfectly acceptable trade off for the excellent throughput we saw using thread-safe programs.

Use of the CICS common work area (CWA) should be avoided if at all possible (that is, set SIT parameter WRKAREA=0)

All programs (including PLT programs, user exits, and user-replaceable modules) should not create or access shared storage (that is, the EXEC CICS GETMAIN SHARED command).

Try to avoid the use of global work areas (GWAs) in user exits, that is, as created by the GALENGTH option of the EXEC CICS ENABLE PROGRAM

All programs, user exits, and URMs should use only threadsafe EXEC CICS commands.

Review the use of function shipping within the application. Function shipped commands will cause threadsafe EXEC CICS commands to become non threadsafe

CEDA example;OBJECT CHARACTERISTICS CICS RELEASE = 0650 CEDA View PROGram( IDMSL102 ) PROGram : IDMSL102 Group : THRDSAFE DEscription : Language : CObol | Assembler | Le370 | C | Pli RELoad : No No | Yes RESident : No No | Yes USAge : Normal Normal | Transient USElpacopy : No No | Yes Status : Enabled Enabled | Disabled RSl : 00 0-24 | Public CEdf : Yes Yes | No DAtalocation : Any Below | Any EXECKey : User User | Cics COncurrency : Threadsafe Quasirent | Threadsafe Api : Cicsapi Cicsapi | Openapi REMOTE ATTRIBUTES DYnamic : No No | Yes

More information on CICS Thread-safe programs can be found here;

http://www.redbooks.ibm.com/abstracts/sg246351.html

14

(continued on page 15)

IDmS rElEaSE 17 mIgraTIoN cHallENgESChris Hoelscher; Senior DB2 and IDMS System & Database AdministratorThe first step to a successful implementation is to acquire the system software from CA Technologies. To do this, sign-on to https://support.ca.com, and select Download Center, and select Products. Select IDMS/DB – MVS from the dropdown menu, Select 17.0 as Release, Select SP1 as Gen Level (or the most current Service Pack if desired). You will auto-magically be routed to Product Downloads. Locate the CA IDMS/DB PRODUCT PACKAGE row, and Select FTP Path (to the right). The FTP information will appear below the CA IDMS/DB PRODUCT PACKAGE row. Figures 1a and 1b below highlight the parts of the Electronic Software Delivery (ESD) that are of interest to this discussion.

Copy the FTP location for future reference. It should look something like /orders/site id/order#/comp/H00904DOA00.pax.Z . Then, Locate IDMS/DB PRODUCT AUTHORIZATION entry and select the HTTP option. When FILE DOWNLOAD pop-up opens, select OPEN. When the Document opens, copy the PASSWORD for future reference. Close the Document Window, and Repeat the process for IDMS SYSTEM TAPE COVER LETTER (copy, save, or print the output). Return to Download Center, select Products, From the Dropdown list, select each product (one at a time) that you plan to install. Remember, products that do not require a password may not appear on this list (check install manual A.2.1 for the entire list). For each product, as before, select HTTP , When FILE DOWNLOAD pop-up opens, select OPEN; When Document opens, copy the PASSWORD for future reference; finally, Close Document Window.

After acquiring the software locations and the passwords, the next step is to acquire the software itself. This is the major departure for IDMS R17 from previous releases. The first step is to determine your root UNIX (yes, UNIX) directory. It might look like /u/userid/autousers/myuserid. To this root directory, you must add subdirectories and permissions – this can be done either in a batch job or online – first is a batch job and the results:

Now for a step-by-step online example. First, request a new sub-directory (see Figure 4), then name the new subdirectory IDMS17 and define it as a directory, and set permissions (777) as in Figure 5.

Now, go up a level and verify the subdirectory has been created (see Figure 6). Having created a place to temporarily store the software, let’s get the software to put there. Execute FTP from the CA website to your UNIX subdirectory as shown in Figure 7.

15

IDMS Release 17 Migration Challenges... cont’d from page 14

DoN’T forgETTo forWarD

coNNEcTIoNS To oTHErS IN yoUr

orgaNISaTIoN

(continued on page 16)

After running the job, verify that the software was successfully loaded shown in Figure 8, followed by

“unpack the pax file” (see Figure 9).

Again, verify that the operation was successful as shown in Figure 10.

Finally, edit the UNZIPJCL member just unpacked, and make the necessary changes: Supply a JOBCARD, CHANGE “yourHLQ” to your high level qualifier, change SMPDIR DD PATH= to the full …/GJH01B path, Uncomment SMPJHOME and SMPCPATH if needed. Submit and watch the fun. After execution of this job, you should have the “traditional” MVS datasets needed to Install IDMS release 17.

At this point, review Cover Letters and PMLs and PIBs for any additional information, and check LMP Keys for any new products you might be bringing onboard at release 17.

We are now ready to run the more familiar IDMS install jobs, but there are changes even here. First, we modify and run CAISAG from the SAMPJCL pds. As before, supply a //JOB card, update the PASSWORD member with the passwords you saved, and update the VARBLIST member. Of course there are changes: New startup parm= parms, GJCVKEY has no default; must be manually entered, new parameters (GJCVKEY has no default; must

be manually entered; new parameters (FROM#REL, HAD#ADS, AUTOFAST), Dictionary/Database names definable, SMS values definable, and the ability to skip the build of EMPDEMO/SQLDEMO.

After Running CAISAG, run the jobs that CAISAG created:

JOB00 – not executed – but handy remindersJOB01 – Allocate libraries - SMS values now definableJOB02 – populate indirect libs – now from diskJOB03 – populate ppoptionJOB04 – RECEIVE – now from diskSMP/E Release V3R4 requiredJOB05 – APPLY – requires CICS libraryJOB06 – ACCEPT – requires CICS libraryJOB07 – link macros to source modules in CSIJOB08 – backup SMP/E – I always skip (but I am not recommending that you should)JOB09 – create startup module and/or UCFCICSJOB10 – execute CAIRIM – skip for now (but must run before you try to bring up a CV)JOB11 – creates JCL “includes”JOB12 – upgrade SYSTEM/SYSDIRL – skip for now (Run when ready to update CVs)JOB13 – upgrade APPLDICT – skip for now (Run when ready to update CVs)JOB14 – Builds EMPDEMO – skip for nowJOB15 – Builds SQLDEMO – skip for nowJOB16 – Builds system 90 – skip for now (Run when ready to update CVs)JOB17 – backup/delete unneeded filesJOB18 – populates SAMPJCL

We can now Modify and Submit TOOLS CAISAG: Supply valid jobcard, Update password member, Update VARBLIST member (changes: New DICMIG parms, New QUEUE retention parms, New SEGMENT/DBNAME parms).

16

(continued on page 17)

After running CAISAG, run the jobs that CAISAG created:

JOB00 – not executed – but handy remindersJOB01 – Allocate libraries - SMS values now definableJOB02 – populate indirect libs – now from diskJOB03 – populate ppoptionJOB04 – Links GSISVCX to the SVC exitJOB05 – RECEIVE – now from diskJOB06 – APPLY – now from diskJOB07 – ACCEPTJOB08 - link macros to source modules in CSIJOB09 – empty for upgrade installsJOB10 – empty for upgrade installsJOB11 – update TOOLDICT – skip for nowJOB12 – update RHDCUXIT – skip if copied from previous releaseJOB13 - Change SVCXLEN value for TASK or LOG Analyzer

Next, let’s apply the published fixes. Beware that many – post-Service Pack 1 fixes are delivered a load module replacements – a MAJOR change from previous releases (and even from the initial (SP0) Release 17.0 environment). This has ramifications I will discuss later. Then apply in-house USERMODS 9such as additional SVCs, SRTT modules, PMOPT modules, SYSIDMS modules, INTC/CINT modules, etc). I try to do as much of this under SMP/E as possible. Next, apply “optional” fixes – this includes RHDCOPTN and ‘zap’ fixes (such as GS27525). The ramifications I mentioned earlier come into play here: each ‘zap’ APAR *must* list as a prereq EVERY load module-replacement PTF that replaced the load module zapped by this optional fix. Additionally, when applying subsequent load module replacement PTFs, you must first remove the optional ‘zap” USERMOD and all un-ACCEPTED PTFS against the same load module, re-APPLY the (just-removed) published fixes, apply the new PTF, and then re-apply the optional “zap” PTF (remembering to list the new PTF as a prereq. Lastly, apply any test fixes you acquired as equivalents from a previous release.

CAIRIM can now be setup and run. First, copy (or have someone copy) the following modules from the R17 APFLIB to the CAIRIM lib: GJH0INIT, IDMSMSVA, RHDCSSFM, and IGCxxx). Run CAIRIM with the following:

PRODUCT(CA IDMS) VERSION(GJH0) INIT(GJH0INIT) PARM(REFRESH(SVC=xxx))PRODUCT(CA IDMS) VERSION(GJH0) INIT(GJH0INIT) PARM(REFRESH(IDMSMSVA))PRODUCT(CA IDMS) VERSION(GJH0) INIT(GJH0INIT) PARM(REFRESH(RHDCSSFM))

To convert the CVs and the dictionaries, do the following:

Copy target loadlibs to runtime loadlibs

Member CONVERT – convert catalog>Save customized msg mods ssc etc>IDMSDIRL – load network schema changes to SYSDIRL>JOB12 – upgrade SYSTEM/SYSDIRL>JOB13 – upgrade APPLDICT>TOOLS JOB11 – upgrade TOOLDICT>JOB14 – Builds EMPDEMO>JOB15 – Builds SQLDEMO>

IDMS Release 17 Migration Challenges... cont’d from page 15 JOB16 – Builds system 90 (from system 99)> SGENCOPY – copies system 90 to runtime system>SGENMOD – misc changes>

Add storage pools for each storage type (HPSPO)STORAGE KEY 9STACKSIZE 10000

Format Journals and LOGs>Alter/Link DMCL for journal definitions>

Restore any customized msg mods ssc etc.>

Next, Modify the startup JCL. RHDCPARM is no longer linked into the startup module, WTOEXIT is no longer linked into the startup module; specified on PARM=; global DMCL and free storage amount specified on PARM=. SYS1.CSSLIB may be required for z/IIP exploitation. Authorize runtime system software library (again, only for z/IIP exploitation). Remember that IDMS release 17 requires a 64-bit OS and requires LE runtime support.

When starting the CV, here are new messages to be aware of (some of these may have been introduced in Release 16; but I skipped that release):

DC200023 V75 T1 CV Change Tracking is not used DC024000 V75 T0 HEALTH CHECKER: Infrastructure initialized DC024000 V75 T0 HEALTH CHECKER: Added check routine IDMS_SCRATCH_IN_MEMORY@CV75 DC024000 V75 T0 HEALTH CHECKER: Added check routine IDMS_CPU_EFFECTIVENESS@CV75 DC024000 V75 T0 HEALTH CHECKER: Added check routine IDMS_CHANGE_TRACKING@CV75 DC024000 V75 T0 HEALTH CHECKER: Added check routine IDMS_ZIIP_USAGE@CV75 DC024000 V75 T0 HEALTH CHECKER: All check routines registered DC074100 V75 T0 V75 ENTER NEXT TASK CODE: CA IDMS release 17.0 tape GJH00BDC329013 V75 T21 Startup resynchronization complete

coNTrIBUTED

SofTWarE

lIBrary

Save time and use the

experience of others to resolve

problems.

17

IDMS Release 17 Migration Challenges... cont’d from page 16

Opportunities we encountered (again, we might have hit some of these had we gone to 16, but we didn’t, so we didn’t):

Old customized code (UCFCICS)>CICS interface changes>

AUTOCMT, AUTONLY , TXNSHR 2-phase commit changes>SVC structure changes>OBTAIN record name within sort name USING …>

See RO12491, but I wouldn’tBOOKMANAGER doc to M/F>JOURNAL changes vs. DBAN>Dashes removed on screens >

Old: CA-ADS Online Dialog Compiler New: CA IDMS Online Map Compiler

NODES change>Old – only needed node based on CV# (even if diff)New – need node based on CV# and SYS# (if diff)

2 Pool 255s – headache for external monitors>New msgs: AREA CLOSEDOWN ?????>

“zap” fixes (GS27525) vs. published fixes (RO14755 for >example)

>In summary, I would recommend to reads the manuals (always the final word). Things to remember:

Many changes to software acquisition

Many changes to software installation

Throw away SP0 install; Install w/SP1 or later

Apply all PTFs

Test, Test, Test

Apply all PTFs (It’s important enough to say it twice)

But overall, R17 is GREAT!!!

IDmS rElEaSE 18 STaTUSJust as you are coming to grips with Release 17.0, for those of you who have yet to move off of 15.0 or 16.0

– here is a status update from Art Cartier about Release 18.0! It might be worth referring to the note in the article on CARE 2010 – about some users complaining that the releases are coming too fast?

From: Cartier, Arthur J Sent: Thursday, August 19, 2010 12:13 PM To: Beedy, Gregory A; Pereira, Carla E Subject: RE: Decision time ! Thanks to all who replied ! Deadline for September's issue is August 20th !

ca IDmS 18.0 UpDaTE aND call for BETa

cUSTomErS!

A new release of the CA IDMS product family, CA IDMS 18.0 is in the final stages of development and Alpha testing and we are looking for additional customers to participate in the beta test program which is currently planned for early January 2011.

Participants in the CA IDMS 18.0 beta testing will be able to try new features such as MSM support, auto tuning, zIIP enhancements, expanded tracing and statistics, SQL enhancements, updated installation guide and much more… More details about the CA IDMS 18.0 release content and beta sign-up requirements can be found at ca.com/betas .

Arthur Cartier CA Technologies VP, Software Engineering Tel: +1-860-627-4555 Fax: +1-860-654-1528 Mobile: +1-860-539-4401 [email protected]

IDmS rElEaSE 16 – NEW END of SErvIcE DaTE

It seems a number of Users are still on Releases15.0 or 16.0 – here is a status update from Art Cartier about Release 16.0! This revised date was as a direct result of User feedback at CA World!

ca IDmS™ r16 – NEW END of SErvIcE DaTE!

Based on customer feedback, January 31, 2012, is an update to the previously announced End of Service date for CA IDMS r16. CA is discontinuing support for CA IDMS r16 after January 31, 2012. This includes CA IDMS r16.0, r16.2 and all related service packs. More information can be found on the product page when you logon to support.ca.com.

WWW.IUaSSN.orgyoUr porTal To IUa SErvIcES aND IDmS

coNTacTS

18

ExplaININg “DEaDlockS” To THE laymaNHow do you explain a ‘deadlock’ to a layman?The boss said to his secretary: ‘For a week we will go abroad for a meeting, so make arrangements.’ The secretary makes call to her husband: ‘For a week my boss and I will be going abroad, you look after yourself.’ The husband makes call to secret lover: ‘My wife is going abroad for a week, so let’s spend the week together.’ The secret lover makes call to the small boy to whom she is giving private tuition: ‘I have work for a week, so you need not come for class.’ The small boy makes call to his grandfather: ‘Grandpa, for a week I don’t have class ‘coz my teacher is busy. Let’s spend the week together.’

The grandpa (Who in fact is ‘The Boss’) makes call to his secretary: ‘This week I am spending my time with my grandson. We cannot attend that meeting.’ The secretary makes call to her husband: ‘This week my boss has some work, so we cancelled our trip.’ The husband makes call to secret lover: ‘We cannot spend this week together; my wife has cancelled her trip.’ The secret lover makes call to small boy whom she is giving private tuition: ‘This week we will have class as usual.’ The small boy makes call to his grandfather: ‘Grandpa, my teacher said this week I have to attend class. Sorry I can’t give you company.’

The grandpa makes call to his secretary: ‘Don’t worry; this week we will attend that meeting, so make arrangements.’...

Source: Unattributed from the Internet

ca No loNgEr DISTrIBUTINg SomE SoUrcE - clarIfIcaTIoNFrom IDMS-L July-August 2010From: IDMS Public Discussion Forum On Behalf Of Siraco, John ASent: Thursday, July 22, 2010 4:55 PMTo: [email protected]: Source members no longer being shipped with the next IDMS release - currently referred to as release 18

We are sending this email to let everyone know that in our current plans for CA IDMS r18 there are several source members that we longer plan on shipping. We would like to hear from you if you believe this is going to cause you any problems. Please understand that these are our plans currently and are subject to change.

List of members:

IDMSINTL#UCFBTCH, #UCFTSO#UCFCICS, #UCFCICZ#UDASCIC, #UDASBCH

With respect to IDMSINTL: We have enhanced IDMSINTL to provide a new "OPTIXIT" for dynamic routing of requests.

From: IDMS Public Discussion Forum on behalf of Mickelsen, Michael G [[email protected]]Sent: Wednesday, 4 August 2010 3:37 AMTo: [email protected]: Update to: Source members no longer being shipped with the next IDMS release - currently referred to as release 18

I just wanted to update this message to address some of the questions and concerns raised by the original message above.

All of the macros listed below will be delivered in Release 18. The macros will be invoked using the same parameters as earlier releases with minor exceptions. The main

difference is that these macros will generate almost no executable code. Instead each macro will generate an option table that will be linked with a small stub module. The resultant stub load module will contain only enough executable code to pass the options to a common load module where essentially all of the executable code will reside. No source will be distributed for the common module.

This will change the installation procedure somewhat for release 18, but it will deliver a major benefit for subsequent updates. Because the common load module is separated from the stub load module, you will almost never need to regenerate the options table nor relink your stub load module when you apply maintenance. When you apply maintenance via SMP/E or MSM, only the common module will ever be updated. The stub load module containing your options table and stub module will not need to change unless you choose to implement a newly introduced feature that uses a new macro parameter.

Note also that any exits that were supported in earlier releases will continue to be supported in release 18. Such exits will be linked with your stub load module. We are considering the possibility of introducing new exits for a few of the interfaces used with the macros below. This would be done to accommodate those sites that have actually modified the executable code in one of these macros to provide additional functionality beyond that provided by the CA-supplied macros.

A few of you have already responded that you do modify executable code in these macros. We will be contacting you directly to try to determine how best to meet your business needs.

If you do not hear from us in the next week and are still concerned that your site may be adversely affected, please contact John or myself directly at [email protected] or [email protected]

[Editor’s note: please refer to e-mail dates of July 22nd and August 4th – Gary]

19

SpacE maNagEmENT lockSFrom IDMS-LFrom: IDMS Public Discussion Forum [[email protected]] Sent: Wednesday, 14 July 2010 12:51 AMTo: [email protected]: SPACE MAMANGEMENT LOCKS

I thought I'd comment on a few things based on previous activity concerning SMP pages and their locking.

First there are never any dbkey locks set on any portion of an SMP since there are no dbkeys associated with an SMP. Also space is never allocated or freed on an SMP so the space lock is also never set. This is fine since no updates to the SMP are ever journaled or recovered as their data is never meant to always be 100% accurate relative to the actual space on a page.

What is maintained is a very short duration buffer lock. This lock is not maintained through the lock manager but uses a simple ECB maintained within the buffer's BME. When a run-unit gets control of a buffer with the intent to update the page it places an exclusive lock on its buffer when the buffer is accessed. A run-unit can only hold concurrent locks on 3 buffers so they are typically cycled rather quickly. Their purpose is to make sure no two run-units are actively altering a page at the same time. In a CV environment these locks are always released at the conclusion of a DML's execution. Since it is possible for contention for one of these locks between run-units it is possible that time-outs or other deadlocks could occur but they would not be reported as dbkey deadlocks.

Certainly the space available in an area will have an impact on the frequency of contention on these locks but unless there is an application where records are being heavily stored concurrently on a small range of pages I would not expect to see that many time-outs or deadlocks related to these buffer locks. I would suspect that page space lock contention on the actual data pages would be more prevalent.

Page space locks have also been changed from their original implementation. We no longer use line index 255 as the 'dbkey' used to lock space. With the creation of the lock manager in Release 12.0 a separate 'space' lock is now maintained. If you see a dbkey lock conflict for line index 255 of a page you are now actually seeing a conflict for a record which has been assigned to line index 255.

Dick Weiland CA TechnologiesSr Sustaining EngineerTel: +1-630-505-6561Fax: [email protected]<mailto:[email protected]> <http://www.ca.com/>

agENDa of THE BIUa EvENT of THUrSDay ocToBEr 28TH

9.30 to 10.30 - CA IDMS Status and PlansCA IDMS is constantly evolving to meet new business challenges. Come to this session to learn about CA’s ongoing commitment to CA IDMS and plans for CA IDMS going forward. This session provides an update on CA Technologies’ Mainframe 2.0 initiative including those features supported by CA IDMS. Finally, hear how CA IDMS customers have successfully tied their CA IDMS environments into today’s modern computing architectures with Web applications and other technology.

11.00 to 12.00 - CA IDMS Modernization Approaches and Case StudiesToday’s IT architectures include phones that are computers and computers in the clouds. Even as systems expand beyond traditional boundaries, at the heart of many thriving environments you’ll find CA IDMS running on IBM System z. This session explores several approaches to CA IDMS modernization by looking at case studies from government organizations and enterprises around the world that depend on CA IDMS reliability for their success.

13.00 to 14.00 - CA IDMS r18 delivery is coming in 2011This session provides a preview of the planned enhancements for r18 and includes an overview of the new features and describes the integration with CA Mainframe Software Manager (MSM), CA’s innovative solution for modernizing the installation, deployment and configuration of mainframe software in a z/OS environment. Find out how r18 will simplify the management of your CA IDMS environment.

14.30 to 15.30 - Enabling your IDMS environment to be part of a Web Services architectureIn this session we will present an conceptual and technical overview of the fos/Web Services for IDMS product and how this set of products, that are fully integrated within IDMS, can be used to enable your IDMS environment to be part of a Web Services architecture. The fos/Web Services Requester product enables your DC-COBOL programs to call external Web Services, which can be either user or standard applications like SAP. If you have the IDMS SQL option, this capability can be extended to batch and CICS programs as well. The fos/Web Services Provider product enables an external application to access IDMS data and applications via a Web Service. This is a generic server which can call multiple services (user-written programs). This session will include an end-user video presentation, that will give you more information on the usage of the products like implementation, stability and performance.

15.30 to 16.30 - Bi-directional integration and data synchronization of IDMS with Open System environmentsBi-directional and transparent integration of IDMS in any Open System environment. This includes SQL based

(continued on page 21)

20

(continued on page 21)

IS IDmS r17 z/IIp ExploITaTIoN rIgHT for yoUr ENvIroNmENTS?Chris Hoelscher; Senior DB2 and IDMS DBA, Humana Inc.

(Note – the following represents my experiences and my experiences alone implementing , monitoring, and tuning z/IIP exploitation across our IDMS enterprise. The opinions expressed herein do not necessarily reflect those of any other IDMS site nor CA Technologies. Any part of this document may be reproduced, with or without the express written consent of Major League Baseball).

z/IIP processor exploitation is a very powerful and popular feature of CA-IDMS Release 17; proper exploitation can certainly create white space (diverting cpu cycles to z/IIP processor(s) allowing room for additional processing that otherwise would have nowhere else to immediately execute) and saving money (formerly billable CPU cycles are diverted to z/IIP processors and become non-billable). But how do we determine proper exploitation?

When I moved our IDMS production environments to Release 17 in April 2009, and implemented z/IIP exploitation immediately upon the upgrade, we saw an immediate overall 20% reduction in billable CPU cycles, and I was informed by our performance/billing monitoring group that due to the cpu reduction, we could (under the provisions of our licensing agreement) reduce our payments for IDMS by an annualized amount in 6 figures. Admittedly, I felt rather pleased with myself and accepted the results without further examination. In other words, I rested upon my laurels with regard to z/IIP. In fact, I was so pleased with our results that I made a point of sharing my results with the IDMS user community. Also, having other work activities to complete, I did not, at that point, investigate z/IIP exploitation further.

Then a funny thing happened: In early 2010 DBAs at other sites emailed me privately with some concern. What was I doing that they were not? Their results were substantially different than mine. Admittedly, I was baffled, but could not let a good challenge go unanswered. I began to investigate each of our online environments in depth, and the results were very surprising (at least to me).

To explain these surprising results, let’s take a very broad -look at what happens during the life of an average task, both in a non-z/IIP environment (ZIIP=N specified on the EXEC JCL card PARM attribute), and a real or simulated z/IIP environment (ZIIP=Y). In non-z/IIP mode, the task executes whatever it needs to do, both

“user (non-DB or DC calls)” and “system (database and communication calls and system housekeeping)” code, consumes CPU cycles, and finishes (for this example, consuming instructions equivalent to 0.02 cpu seconds). The machine instructions, without regard to content, are executed in “TCB” mode, anchored off one or more TCB control blocks. In ZIIP=Y mode, the same task would continue to execute all “user” code and specifically-excluded “system” code in TCB mode, but would execute all non-excluded “system” code in “SRB” mode, and a portion of that “SRB” mode instructions (in our testing we reached a high water mark of 33%) would be routed to a z/IIP processor for (billing-free) execution. Were there no overhead to ZIIP=Y mode processing, this

“average” task would consume the same .02 seconds of CPU (an instruction is an instruction, be it processed on a regular or z/IIP processor, right?), but, alas, there is overhead to ZIIP=Y mode processing.

What, then, is this overhead that can so drastically affect z/IIP exploitation results? It is the CPU instructions consumed to move an executing process from TCB mode to SRB mode and vice versa. The number of swaps occurring can easily be seen in the DCMT D SUBT XXX (where XXX is 001 in a non-multitasking site) beside the heading Count actual swaps. Some IDMS environments (CVs), such as a CV at my site where nearly 90% of our tasks execute, is exclusively a back-end for CICS (and other IDMS CV’s) front end transactions. In this type of environment, there is NO user code, and as such, very low swapping between TCB and SRB modes (the only swapping would occur when swapping between included and excluded system code). In this environment we averaged from 0.5 to 1.7 “swaps” per task. In other environments at our site, we have tasks that execute user and system code, but are very simple in design, and do not require many swaps. In these environments, I have recorded an average of 50 to 125 swaps per task. Lastly, we have a few online environments where the tasks are ADS/O and DC-COBOL, and have very complex user code intermixed with DB and DC calls. In these environments, I have recorded averages of over 2500 swaps per task!

How can I determine if the overhead is defeating the benefits of z/IIP exploitation, as so clearly seemed the case to the sites with whom I was corresponding? Every observation will have its own sets of caveats, but this is the method I chose to investigate: in ZIIP=N mode, we determined the average CPU per task (in my fictional example, 0.02 seconds) . In ZIIP=Y mode, any additional CPU per task is attributable to z/IIP overhead (let’s say, 0.025 total CPU task, for an overhead of 0.005 cpu seconds per task (and this overhead currently executes in TCB mode). The next step is to determine the average z/IIP-processed CPU per task (from summing the ZIIP counts (in cpu seconds) from DCMT D SUBT XXX (zIIP time) for each subtask. In our example, let’s say that the average z/IIP per task is .008 cpu seconds – then we have shown that each task has a net reduction in billable CPU of .002 seconds (.008 z/IIP transfer

- .005 z/IIP overhead). In this case we are doing a good thing. But what if the results showed that we are now executing in ZIIP=Y mode 0.03 total CPU seconds per task (with a resulting overhead of 0.01 cpu seconds/task, or 150% of the original CPU, but still routing that same .008 cpu seconds/task to z/IIP? In this case we are costing ourselves .002 billable cpu seconds/task (.008 z/IIP transfer - .010 z/IIP overhead). In these cases, z/IIP exploitation is certainly not beneficial. This appears to be the scenario that other sites are experiencing, and

21

R17 Z/IIP Exploitation... cont’d from page 20

(previously unbeknownst to me, at my site as well). I am in the process of extensively testing CVs with high swap rates AND DEFERRING z/IIP EXPLOITATION until release 18.

What did he say, you might be asking yourself, RELEASE 18? Release 17 has only been GA for 18 months. What is up with Release 18 (announced as GA possibly in May 2011)? *** the following is based only upon current plans of CA as announced at CA-WORLD 2010

- nothing is guaranteed nor should be construed as a promise for Release 18. Having said that, the announced plans are to improve z/IIP efficiency in the newest release, and I can only assume/hope that the improved efficiency will be in the area of swap management. CA acknowledged that z/IIP exploitation, like multitasking and shared cache exploitation before it, was introduced at one release with favorable results, and will be continually refined in subsequent results for closer to optimal results.

Are there activities you can perform to make your CVs more z/IIP friendly in Release 17 RIGHT NOW ??? Surprisingly, the answer is YES. If you can identify periods of time (evening and or weekend batch cycles ) where swapping is low, consider multiple CV startup configurations (requiring CV bouncing) to match ZIIP= value to the type of processing occurring within each time interval. I have identified 2 candidate CVS with high swapping on the weekend and low swapping during the week which I will attempt such a startup (dare I say) swap. Additionally, while beyond the scope of what I have the time (and authority) to investigate, and not much hope of success, there is the possibility that application re-engineering might have success in reducing application TCB/SRB swapping. One last idea, if it is possible to remove any numbered user exits that your task hit, you can remove a large hindrance to successful z/IIP exploitation. At our site, our least z/IIP-friendly CVs execute exit 23 for every ads or cobol run unit – and this appears to be a very big contributor to swapping.

In the end, I will admit that initially I treated z/IIP exploitation with a SET IT AND FORGET IT. Obviously, a global policy toward z/IIP exploitation may be acceptable as a very first intention, but simply cannot lead to optimum results.

INTroDUcTIoN To rElaTIoNal DaTaBaSES aND SQl for IDmS programmErSWhat is a relational database?A Relational Database Management System (RDBMS) is a way to organize and access data. You are probably already familiar with non-relational database management systems such as IDMS and VSAM. There are many brands of relational database. Some examples are IDMS/SQL, DB2, Oracle, and Microsoft SQL Server. What they all have in common is:

a) The same process is employed to design the database.

b) The same set of terms is used to define the database.

c) The same language is used to access the data. This language is called Structured Query Language, or SQL.

Relational database designIf you are familiar with IDMS database design, you should have no trouble understanding relational database design. The design process is very similar. You still have to go through the same steps of normalizing data, etc. The visual representation of a relational database is called an entity-relationship diagram (ERD). It looks very much like a Bachman diagram. If you can read a Bachman diagram, you can read an ERD.

What does “relational” mean?Tables “relate” to one another through the use of shared key fields.

In Figure 1, both the EMPLOYEE and the DEPARTMENT tables contain a column called DEPTNAME. This column is the “primary key” for DEPARTMENT, and the “foreign key” for EMPLOYEE. To get both employee and department information for Jane Doe, you would first locate Jane Doe’s information in the EMPLOYEE table, then use the value in her DEPTNAME column to locate the matching information in the DEPARTMENT table.

(continued on page 22)

access to IDMS from JAVA, .NET, WINDOWS, UNIX/LINUX and the creation of Views between IDMS and other data-sources. Mainframe programs can also access RDBMS on Open System platforms and can directly communicate with processes and applications in these environments. Bi-directional change data capture in real-time for IDMS and Open System RDBMS with minimum impact on the mainframe. Repository based replication linkages support many to many relationships for source and target databases..

Agenda of BIUA event.. cont’d from page 19

22

(continued on page 23)

Introduction to SQL... cont’d from page 21

This process is called “joining” two tables. You will see an example of this in the SQL section later on.

Relational database termsThe following table lists some relational database terms, with the corresponding IDMS and VSAM terms:

The foreign key is not a DBkey, like the pointers we are used to. It's a column (element) that is duplicated in both the referenced table (owner record) and the referencing table (member record). It serves the function of a pointer, in that it connects two tables (record types).

What is SQL?SQL stands for “Structured Query Language”. It is the data manipulation language (DML) used to access relational databases. SQL commands are embedded in user-written programs just as IDMS and VSAM commands are.

SQL commandsThe following table lists the major SQL commands, with the corresponding IDMS and VSAM commands:

What is different about SQL?Most DML’s such as IDMS and VSAM commands act upon one record per command. SQL can act upon many records in a single command. A single SELECT command may return hundreds or thousands of rows. Likewise, a single DELETE command can delete your entire database! So you need to be very careful in coding your selection criteria (the “WHERE clause” of the SQL statement).

Sample SQLThese examples use the relational database depicted in Figure 1.

The following example reads the EMPLOYEE table (file). It locates all of the rows (records) that contain ‘DOE’ in the LASTNAME column (field). The contents of the LASTNAME, FIRSTNAME, and SSN columns are returned to the program that issued the command.

SELECT LASTNAME, FIRSTNAME, SSN FROM EMPLOYEE

WHERE LASTNAME = ‘DOE’

-----------------------------------------------------------

The following example illustrates a “join”. It reads the EMPLOYEE table, locating all of the rows that contain ‘DOE’ in the LASTNAME column. It then reads the DEPARTMENT table, locating all of the rows that contain the DEPTNAME values that match those from the ‘DOE’ employees. Values returned to the program are LASTNAME, FIRSTNAME, and SSN (from the EMPLOYEE table), and MISSION and BUDGET (from the DEPARTMENT table).

SELECT LASTNAME, FIRSTNAME, SSN, MISSION, BUDGET FROM EMPLOYEE, DEPARTMENT WHERE LASTNAME = ‘DOE’ AND EMPLOYEE.DEPTNAME = DEPARTMENT.DEPTNAME-----------------------------------------------------------

The following example adds a new EMPLOYEE row.

INSERT INTO EMPLOYEE (LASTNAME, FIRSTNAME, SSN, SALARY, DEPTNAME) VALUES

(‘DOE’, ‘JANE’, ‘999999999’, 743.28, ‘DIT’)

-----------------------------------------------------------

The following example modifies the EMPLOYEE table. It locates all of the rows that contain ‘DDP’ in the DEPTNAME column, then changes DEPTNAME to ‘DIT’ for those rows only.

UPDATE EMPLOYEE SET DEPTNAME = ‘DIT’

WHERE DEPTNAME = ‘DDP’

-----------------------------------------------------------

23

Introduction to SQL... cont’d from page 22

coNTrIBUTED

SofTWarE

lIBrarySave time

and use the experience of

others to resolve problems.

The following example deletes all EMPLOYEE rows that have a salary over $1,200.00.

DELETE FROM EMPLOYEE WHERE SALARY > 1200

Additional resources:The “IDMS SQL Self-Training Guide” included on the IDMS documentation CD for Release 12 and up.

Biographical note:Kay Rozeboom is a DBA/Systems Programmer with the State of Iowa. She has 21 years of IDMS experience. Her special interest is in integrating mainframe data and applications with other platforms.

frEQUENTly aSkED QUESTIoNS aBoUT ca IDmS™ INDExINgReprinted from “CA Tech Insider: CA IDMS”

Copyright © 2010 CA. acknowledged

Q: How many indexes can be defined in a single database area?

A: There is no practical limit as to the number of indexes that can be defined in a database area. However, it is strongly recommended that each system-level index be given its own page range whether that is a separate area or a unique restricted page range within an area containing multiple indexes. In addition, it is a bad practice to mix system-level indexes in a page range with other types of data records.

These recommendations are made relative to the performance of the index. The most effective tuning option for an index is the displacement of the level-0 SR8 records. Specification of this option tells IDMS how many pages to reserve for intermediate level SR8 records. If an index shares its page range with other indexes or database records, the space reserved for the intermediate records may be used by these other records/indexes and lead to excessive splitting and spawning of the index's SR8 records. This problem ultimately leads to additional I/O activity to navigate the index structure.

Q: What are some things that I should take into consideration when deciding to define an index as linked or unlinked?

A: Defining an index as being unlinked does provide a number of benefits over using a linked index.

Unlinked indexes can be added and removed without restructuring the database, provided the control length of the record is not changed.

Building or rebuilding an unlinked index is faster because there are no index pointers in the database record that must be maintained.

An unlinked index requires less disk space in the data record's area since there is no index pointer per data record occurrence.

The overhead of processing orphaned records in the level-0 SR8's is eliminated.

However, the use of an unlinked index can cause more binary searches of the index structure since the data record does not have a pointer to its related SR8. This can result in an increase in the CPU and I/O needed to process the index.

It should be noted that any user-owned index must be a linked index and system-owned indexes defined through SQL are always created as unlinked indexes.

Q: I have a local batch program that issues an "OBTAIN NEXT record-name WITHIN index-name" command. IDMS will periodically return an error status of 0326. How can I get a record not found condition when I am not using a symbolic-key access?

A: Any DML command that accesses an index structure has the potential to return a minor code of 26. This can occur if the DBMS attempts to access an SR8 record and fails to locate that record occurrence. If the run-unit involved was readied against the index area in an update mode, the general diagnosis would be that the index structure has been corrupted and the index should be rebuilt using the FROM MEMBERS or ALLROWS option.

This certainly could be the case when encountered by a retrieval program but few sites run with retrieval locks and there is no locking mechanism for local run-units. As a result, you might be experiencing a false broken index caused by the concurrent updating of the index by other run-units. When this error occurs, the recommendation is to rerun the local batch job. If the error occurs consistently, you probably have a corrupt index and a rebuild is in order.

Copyright © 2010 CA. All rights reserved.

24

International ChairCompany: Managing Member Run Right, LLCEmail: [email protected]

Secretary/TreasurerEmail CoordinatorBob WiklundCompany: Tiburon TechnologiesAddress: 17101 W. Gable End Lane, Surprise, AZ 85387Phone: 623 594-6022Email: [email protected]

International Vice ChairContributed Software LibrarianLaura RochonCompany: Ajilon Professional ServicesAddress: 22 Jolliet, St-Bruno, Quebec J3V 4Z1 CanadaPhone: 514-943-8290Fax: 450 441-6880Email: [email protected]

European IUA RepresentativeSteve RundleCompany: British Telecom BT Group plc.Address: PP2B33 Angel Centre, 403 St. John Street, London EC1V 4PL UKPhone: +44 (0)20 7777 6920Fax: +44 (0)20 7777 6921Email: [email protected]

Board MemberTerry SchwartzCompany: Perot SystemsAddress: PO Box 269005Phone: 972 577-3722Email: [email protected]

Board MemberCraig [email protected]

Board MemberDiane MontstreamAllen Systems [email protected]

Board MemberJan [email protected]

EditorGary CherletJustice Technology ServicesSouth Australian Department of [email protected]

Desktop PublishingRebecca Shaw 404 [email protected]

IDMS Connections is a bi-annual publication of the CA-IDMS Database and Applications User Association (IUA). It is designed to promote its members’ objectives. IDMS Connections is not responsible for the opinions expressed by its writers and editors.

Information User Association401 N. Michigan Ave. Chicago, IL 60611-4267 Phone: 312/321-6827 Fax: 312/245-1081

Internet: [email protected] Web: http://iuassn.org