16.01.2013 Views

Enhanced Catalog Sharing and Management - IBM Redbooks

Enhanced Catalog Sharing and Management - IBM Redbooks

Enhanced Catalog Sharing and Management - IBM Redbooks

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

Jon Tate, Frank Byrne, Klaus Stanislawiak, Wolfgang Wettig<br />

International Technical Support Organization<br />

www.redbooks.ibm.com<br />

SG24-5594-00


International Technical Support Organization<br />

<strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

July 1999<br />

SG24-5594-00


Take Note!<br />

Before using this information <strong>and</strong> the product it supports, be sure to read the general information in<br />

Appendix C, “Special Notices” on page 117.<br />

First Edition (July 1999)<br />

This edition applies to Version 1, Release 5 of DFSMS/MVS, Program Number<br />

5695-DF1 for use with the OS/390 Operating System.<br />

Comments may be addressed to:<br />

<strong>IBM</strong> Corporation, International Technical Support Organization<br />

Dept. 471F Building 80-E2<br />

650 Harry Road<br />

San Jose, California 95120-6099<br />

When you send information to <strong>IBM</strong>, you grant <strong>IBM</strong> a non-exclusive right to use or<br />

distribute the information in any way it believes appropriate without incurring any<br />

obligation to you.<br />

© Copyright International Business Machines Corporation 1999. All rights reserved.<br />

Note to U.S Government Users - Documentation related to restricted rights - Use, duplication or disclosure is subject to restrictions<br />

set forth in GSA ADP Schedule Contract with <strong>IBM</strong> Corp.


Contents<br />

Figures ......................................................vii<br />

Tables .......................................................ix<br />

Preface ......................................................xi<br />

The Team That Wrote This Redbook . ...................................xi<br />

CommentsWelcome ............................................... xii<br />

Chapter 1. Introduction. .........................................1<br />

1.1 ICF<strong>Catalog</strong>Structure<strong>and</strong>Evolution..............................1<br />

1.1.1 <strong>Catalog</strong>Structure ........................................2<br />

1.1.2 WhereaDataSetisDescribed..............................2<br />

1.1.3 Accessing<strong>Catalog</strong>s.......................................4<br />

1.1.4 <strong>Catalog</strong>AddressSpace....................................5<br />

1.2 TapeVolume<strong>Catalog</strong>s........................................7<br />

1.3 AReviewoftheSHAREOPTIONSParameter.......................7<br />

1.3.1 DefiningtheLevelof<strong>Sharing</strong>withinaSystem...................8<br />

1.3.2 DefiningtheLevelof<strong>Sharing</strong>AcrossSystems ..................8<br />

1.4 <strong>Catalog</strong>Evolution............................................8<br />

1.5 ParallelSysplexPerformanceConsiderations<strong>and</strong>Solutions............9<br />

1.5.1 Non-<strong>Catalog</strong>Solution ....................................10<br />

1.5.2 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> ................................10<br />

1.5.3 Coupling Facility Structure Terminology <strong>and</strong> Connectivity .........12<br />

1.6 DataSetNaminginaParallelSysplex ...........................13<br />

Chapter 2. Planning ...........................................15<br />

2.1 Planning for the New Functions of DFSMS/MVS 1.5 .................15<br />

2.2 Planning for ECS Implementation . . . ............................16<br />

2.2.1 DeterminingWhich<strong>Catalog</strong>sUtilizeECS .....................16<br />

2.2.2 DeterminingtheNumberof<strong>Catalog</strong>s.........................16<br />

2.2.3 CacheStructureDescription...............................16<br />

2.2.4 SecurityConsiderations ..................................17<br />

2.2.5 CacheStructureSizing...................................17<br />

2.2.6 ActivatingECS .........................................18<br />

2.2.7 LossofECSMode ......................................18<br />

2.2.8 Operational Issues ......................................19<br />

2.3 Extended Alias Support. ......................................20<br />

Chapter 3. Implementation ......................................23<br />

3.1 Implementing <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> . . . ......................23<br />

3.1.1 Underst<strong>and</strong>ing the ITSO Environment Setup . . .................23<br />

3.1.2 DefiningtheCFRMPolicy.................................24<br />

3.1.3 ActivatingtheCFRMPolicy................................25<br />

3.1.4 Connecting to the CF Structure . ............................26<br />

3.1.5 SettingtheECSHRAttributeforSelected<strong>Catalog</strong>s..............28<br />

3.1.6 IssuingtheAutomaticAddComm<strong>and</strong>........................29<br />

3.2 Implementing Extended Alias Support. ...........................30<br />

3.2.1 SettingtheSystemSymbols...............................30<br />

3.2.2 Defining an Extended Alias ................................32<br />

3.2.3 Referring to an Extended Alias . ............................33<br />

3.2.4 Extended Alias Support for <strong>Catalog</strong>s . . . ......................34<br />

© Copyright <strong>IBM</strong> Corp. 1999 iii


iv <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

Chapter 4. Operations .........................................35<br />

4.1 UsingtheModify<strong>Catalog</strong>Comm<strong>and</strong>............................ 35<br />

4.1.1 SettingtheInitialCASOptions<strong>and</strong>Parameters................ 35<br />

4.1.2 Allocating<strong>Catalog</strong>stotheCAS ............................ 36<br />

4.1.3 ControllingtheCASEnvironment........................... 36<br />

4.1.4 ControllingtheStatusof<strong>Catalog</strong>sintheCAS ................. 37<br />

4.1.5 ControllingOptions<strong>and</strong>SettingsintheCAS .................. 41<br />

4.1.6 ControllingtheStatusofServiceTasksinCAS................44<br />

4.1.7 Controlling <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> in CAS. . . .............. 44<br />

4.1.8 RestartingCAS........................................ 45<br />

4.1.9 SysplexConsiderations.................................. 45<br />

4.2 Operational Procedures . . .................................... 46<br />

4.2.1 Monitoringthe<strong>Sharing</strong>Statusfor<strong>Catalog</strong>s................... 46<br />

4.2.2 Monitoring the CF Connection Status for ECS . . . .............. 46<br />

4.2.3 MonitoringthePerformanceParametersforCAS............... 47<br />

4.2.4 PerformanceStatistics................................... 47<br />

4.2.5 ReplacingAMSLISTCATwiththe<strong>Catalog</strong>SearchInterface...... 52<br />

Chapter 5. Backup <strong>and</strong> Recovery ................................ 53<br />

5.1 Backup .................................................. 53<br />

5.1.1 Backup Frequency . . .................................... 53<br />

5.1.2 Backup Techniques . .................................... 53<br />

5.1.3 DecidingontheBackupTechnique......................... 54<br />

5.1.4 Backup Utilities ........................................ 54<br />

5.1.5 ConsiderationsforDevelopingtheBackupProcess............. 57<br />

5.1.6 Considerations for Developing the Backup Procedures . . ........58<br />

5.2 TapeVolume<strong>Catalog</strong>s ......................................59<br />

5.2.1 UsingDFSMSdss....................................... 60<br />

5.2.2 UsingAMSExport...................................... 60<br />

5.3 Recovery................................................. 61<br />

5.3.1 DeterminingWhentoRecovera<strong>Catalog</strong>..................... 61<br />

5.3.2 Recovery Techniques <strong>and</strong> Utility Actions . . ................... 61<br />

5.3.3 ConsiderationsforDevelopingtheRecoveryProcess........... 61<br />

5.3.4 Considerations for Developing Recovery Procedures. ........... 63<br />

5.4 Post-Recovery Updates . . .................................... 64<br />

5.4.1 Manually Checking for Missing Updates. . . ................... 64<br />

5.4.2 UsingDFSORTintheCheckingProcess..................... 65<br />

5.5 Integrated <strong>Catalog</strong> Forward Recovery Utility . . . ................... 66<br />

Chapter 6. Analyzing Structural Integrity. ......................... 69<br />

6.1 StructuralIntegrity.......................................... 69<br />

6.1.1 WhentoChecktheStructuralIntegrity....................... 69<br />

6.1.2 HowtoChecktheStructuralIntegrity........................ 69<br />

6.1.3 The Consequences of Neglecting Structural Integrity. ........... 70<br />

6.2 SynchronizationErrors ......................................70<br />

6.2.1 WhatCausesSynchronizationErrors........................ 72<br />

6.2.2 DetectingSynchronizationErrors........................... 72<br />

6.2.3 Repairing Synchronization Errors. . ......................... 74<br />

6.2.4 Utilities <strong>and</strong> Tools Available for Diagnosis . ................... 76<br />

6.2.5 VSAM Knowledge Database .............................. 77<br />

6.3 <strong>Catalog</strong><strong>Sharing</strong>Problems....................................77<br />

6.3.1 ErrorSymptomsDueto<strong>Sharing</strong>Problems.................... 77<br />

6.3.2 DeterminingIfa<strong>Catalog</strong>isActuallyShared...................78


6.4 CASProblemsDueto<strong>Catalog</strong>StructuralorSynchronizationErrors.....79<br />

6.4.1 CAS ABEND or Error Messages ............................79<br />

6.4.2 CASHangorLockoutSituations............................79<br />

Appendix A. <strong>Catalog</strong> Search Interface ..............................83<br />

A.1 CSISetup....................................................83<br />

A.2 CSIProgrammingConsiderations..................................84<br />

A.3 <strong>IBM</strong> Supplied Sample Programs . ..................................85<br />

A.4 RealWorldExampleofCSIImplementation..........................87<br />

Appendix B. What’s Changed <strong>and</strong> What’s New ......................101<br />

B.1 MODIFYCATALOGComm<strong>and</strong>Syntax.............................101<br />

B.2 New <strong>and</strong> Changed Messages . . . .................................108<br />

Appendix C. Special Notices .....................................117<br />

Appendix D. Related Publications .................................119<br />

D.1 International Technical Support Organization Publications. .............119<br />

D.2 <strong>Redbooks</strong> on CD-ROMs . .......................................119<br />

D.3 OtherPublications.............................................119<br />

How to Get ITSO <strong>Redbooks</strong>. ....................................121<br />

<strong>IBM</strong> Redbook Fax Order Form .......................................122<br />

List of Abbreviations ..........................................123<br />

Index .......................................................125<br />

ITSO Redbook Evaluation ......................................133<br />

v


vi <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong>


Figures<br />

1. UserAddressSpaceActivityRelatedtoDataSetOpen..................5<br />

2. CASUsageforDataSetReference..................................6<br />

3. CASUsageofIntegrityVVRs ......................................9<br />

4. Integrity VVR Coupling Facility Utilization . ...........................11<br />

5. StructureDiagramoftheITSOParallelSysplex .......................24<br />

6. Running the Administrative Data Utility (IXCMIAPU) ....................25<br />

7. HowtoStartUsingtheCFRMPolicy................................26<br />

8. CAS ECS Status Display After Connecting to the Coupling Facility ........26<br />

9. CASConnectFailuretoECSStructureatIPL<strong>and</strong>StatusDisplay .........27<br />

10. XCF Structure Display for SYSIGGCAS_ECS. ........................28<br />

11. AlteringtheECSHRAttribute......................................28<br />

12. DefiningaUser<strong>Catalog</strong>withtheECSHRAttribute.....................29<br />

13. Enabling the Automatic Add Function <strong>and</strong> Status Display . . ..............29<br />

14. Sample Symbol Definitions Parmlib Member (IEASYMxx) . ..............31<br />

15. DataSetNameResolutionforaSymbolicAliasonDifferentSystems......32<br />

16. DefininganExtendedAliasUsingaSystemSymbol....................32<br />

17. Extended Alias Name Resolution without the System Symbol Set . ........33<br />

18. Extended Alias Name Resolution with the System Symbol Set. ...........33<br />

19. Using an Extended Alias in JCL. . ..................................34<br />

20. Allocated<strong>Catalog</strong>sStatusDisplay..................................38<br />

21. <strong>Catalog</strong>CacheStatisticsReport ...................................38<br />

22. ECSStatusDisplayWith<strong>Catalog</strong>sNotUsingECS.....................40<br />

23. Sample <strong>Catalog</strong> Report Output . . ..................................41<br />

24. Sample <strong>Catalog</strong> Dynamic Dump Report . . ...........................42<br />

25. Sample<strong>Catalog</strong>ModuleEntryDisplay...............................42<br />

26. Sample <strong>Catalog</strong> Performance Report ...............................43<br />

27. Sample<strong>Catalog</strong>ServiceTasksDisplay..............................44<br />

28. Sample<strong>Catalog</strong>TaskDetailDisplay................................44<br />

29. Performance Report after LISTCAT in ECS Mode. .....................48<br />

30. Performance Report after LISTCAT in VVDS <strong>Sharing</strong> Mode. .............49<br />

31. Performance Report after Allocating 300 Data Sets ECS Active . . . ........50<br />

32. Performance Report after Allocating 300 Data Sets in VVDS <strong>Sharing</strong> Mode . 51<br />

33. IDCAMS EXPORT joblog Sample ..................................55<br />

34. DFSMSdss Logical Dump joblog Sample . ...........................56<br />

35. DFSMSdssFullVolumeDumpjoblogSample.........................57<br />

36. SampleJCLforDFSMSdssVOLCATBackup.........................59<br />

37. Sample JCL to Create a GDG Base Entry for SMS-Managed GDSs .......60<br />

38. Sample JCL to Create a GDG Base Entry for a non SMS-Managed volume . 60<br />

39. SampleJCLtoLocka<strong>Catalog</strong>byIDCAMSALTERLOCKComm<strong>and</strong>......64<br />

40. Sample JCL to Restore the Most Recent <strong>Catalog</strong> Backup Copy from a GDS . 64<br />

41. DFSORTControlStatementstoCollectSMFRecordtype61.............65<br />

42. ICFRUSimplifiedDataFlow ......................................67<br />

43. ICF-<strong>Catalog</strong> BCS, VVDS Dependencies . . ...........................70<br />

44. SampletoDIAGNOSEaBCS<strong>and</strong>ComparetoTwoVVDSs .............73<br />

45. SampleJCLtoDIAGNOSEaVVDS<strong>and</strong>ComparetoaBCS.............73<br />

46. Sample JCL for DFSMSdss to Detect Duplicate or Orphan VVRs . ........74<br />

47. SampleJCLtoPrintaVVDSbyDFSMSdss..........................76<br />

48. Sample Output of the DS QT,0CC2,1,UCB Comm<strong>and</strong>.. .................79<br />

49. <strong>Catalog</strong>StatusDisplayforOpen<strong>Catalog</strong>s............................80<br />

50. <strong>Catalog</strong>Task<strong>and</strong>StatusDisplay...................................80<br />

© Copyright <strong>IBM</strong> Corp. 1999 vii


viii <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

51. MODIFYCATALOGComm<strong>and</strong>Syntax .............................101


Tables<br />

1. LocationofDataSetInformation....................................4<br />

2. SampleTimingsUsedbyAMSLISTCAT<strong>and</strong>IGGCSILC................11<br />

3. Sample ECS Structure Sizes for a Currently Supported Coupling Facility . . . 18<br />

4. MODIFYCATALOGParametersbyResourceType....................37<br />

5. Backup<strong>and</strong>RecoveryUtilitiesRelationship..........................61<br />

6. OverviewofRepairActionsPerformedbyIDCAMS ....................75<br />

7. SampleTimingsUsedbyIDCAMSLISTCAT<strong>and</strong>IGGCSILC.............86<br />

© Copyright <strong>IBM</strong> Corp. 1999 ix


x <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong>


Preface<br />

This redbook will help you implement, tailor <strong>and</strong> configure <strong>Enhanced</strong> <strong>Catalog</strong><br />

<strong>Sharing</strong> (ECS), which was introduced with DFSMS/MVS 1.5. It uses a concise<br />

step-by-step approach, taking you through the considerations <strong>and</strong> sequence of<br />

tasks necessary to perform a successful implementation of ECS in your Parallel<br />

Sysplex.<br />

This redbook gives you a broad underst<strong>and</strong>ing of the Integrated <strong>Catalog</strong> Facility<br />

(ICF) with respect to its design, structure <strong>and</strong> evolution. The manner in which<br />

ECS exploits the Parallel Sysplex architecture is explained, along with the<br />

performance <strong>and</strong> recovery benefits that this allows you to enjoy. The changed<br />

comm<strong>and</strong>s <strong>and</strong> operational considerations for ECS are introduced to allow you to<br />

take advantage of the new functionality immediately. Additionally, this redbook<br />

shows how symbolic substitution <strong>and</strong> Extended Alias Support is implemented,<br />

<strong>and</strong> how to realize performance gains by using the <strong>Catalog</strong> Search Interface<br />

(CSI) in place of the LISTCAT comm<strong>and</strong>.<br />

This redbook is intended for experienced storage administrators familiar with both<br />

DFSMSdfp <strong>and</strong> ICF. New users of DFSMSdfp <strong>and</strong> ICF may like to read<br />

DFSMS/MVS V1R5 DFSMSdfp Storage Administration Reference, SC26-4920,<br />

<strong>and</strong> also Managing <strong>Catalog</strong>s, SC26-4914 before reading this redbook, to<br />

familiarize themselves with the concepts <strong>and</strong> comm<strong>and</strong>s that are covered here.<br />

This redbook is not intended to give an in-depth underst<strong>and</strong>ing of Parallel<br />

Sysplex.<br />

First, we introduce the ICF <strong>and</strong> its evolution, <strong>and</strong> explain the business problem<br />

that ECS solves. We show the considerations that installations must take into<br />

account when planning to implement the ECS solution, <strong>and</strong> the comm<strong>and</strong>s, JCL,<br />

<strong>and</strong> operational considerations necessary. We cover backup <strong>and</strong> recovery<br />

considerations applicable to ECS <strong>and</strong> the ICF, <strong>and</strong> the structural integrity of the<br />

ECS <strong>and</strong> the ICF, with preventative <strong>and</strong> reactive measures that can be taken by<br />

the user.<br />

The Team That Wrote This Redbook<br />

This redbook was produced by a team of specialists from around the world<br />

working at the International Technical Support Organization, San Jose Center.<br />

Jon Tate is a project leader for Storage Solutions at the International Technical<br />

Support Organization, San Jose Center. Before joining the ITSO in 1999, he<br />

worked in the <strong>IBM</strong> Technical Support Center, providing level 2 support for <strong>IBM</strong><br />

storage products. Jon has 13 years of experience in storage software <strong>and</strong><br />

management, services <strong>and</strong> support.<br />

Frank Byrne is an Advisory Specialist working for the <strong>IBM</strong> Technical Support<br />

Center in the UK. He has 30 years of experience in support of OS/390 <strong>and</strong> its<br />

predecessors. His areas of expertise include the implementation of Parallel<br />

Sysplex.<br />

© Copyright <strong>IBM</strong> Corp. 1999 xi


Comments Welcome<br />

xii <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

Klaus Stanislawiak is a systems engineer at Software AG in Darmstadt,<br />

Germany. He has 18 years of experience working with customers in the areas of<br />

MVS <strong>and</strong> OS/390. His areas of expertise include implementation support for<br />

OS/390, systems <strong>and</strong> network management, <strong>and</strong> cross-platform application<br />

development.<br />

Wolfgang Wettig is a Senior Advisory Specialist working in <strong>IBM</strong> Global Services<br />

PSS Software Support Center in Mainz, Germany for OS/390. He joined <strong>IBM</strong> in<br />

1970, <strong>and</strong> for the first 13 years, worked as a Customer Engineer in the Large<br />

Systems environment. Since 1983, he has worked in software service <strong>and</strong><br />

support. His areas of expertise include DFSMS/MVS storage management<br />

software, <strong>and</strong> he has supported SMS installations since the availability of SMS.<br />

He has contributed to several other ITSO redbooks.<br />

Thanks to the following people for their invaluable contributions to this project:<br />

From the Storage Systems Division - San Jose:<br />

Charlie Burger<br />

Pat Choi<br />

Mike Nelsen<br />

Mark Thomen<br />

From the International Technical Support Organization:<br />

Rich Conway<br />

Bob Haimowitz<br />

Mary Lovelace<br />

From the International Technical Support Organization Publishing Team:<br />

Joan Bow<br />

Emma Jacobs<br />

Yvonne Lyon<br />

Deanna Polm<br />

Your comments are important to us!<br />

We want our redbooks to be as helpful as possible. Please send us your<br />

comments about this or other redbooks in one of the following ways:<br />

Fax the evaluation form found in “ITSO Redbook Evaluation” on page 133 to<br />

the fax number shown on the form.<br />

Use the on-line evaluation form found at http://www.redbooks.ibm.com/<br />

Send your comments in an internet note to redbook@us.ibm.com


Chapter 1. Introduction<br />

As the number of systems grows over time, <strong>and</strong> with it the number of catalogs<br />

increases, this brings with it problems related to the sharing of catalogs across<br />

these additional systems. Maintaining catalog integrity <strong>and</strong> the speed with which<br />

data is retrieved, while sharing the catalog between systems, is a business<br />

problem for which there have been various attempts at a solution.<br />

As the technology that surrounds operating systems has evolved over time, a<br />

solution to this problem has been provided by using the Parallel Sysplex coupling<br />

facility. This solution is presented here as <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> (ECS). By<br />

taking advantage of this solution, you will be able to decrease both CPU (central<br />

processor usage) <strong>and</strong> job elapsed time, while maintaining the structural integrity<br />

of your catalog.<br />

In this introductory chapter, we describe:<br />

The ICF structure <strong>and</strong> evolution<br />

Tape volume catalogs<br />

A review of sharing options<br />

<strong>Catalog</strong> evolution<br />

Parallel Sysplex performance considerations <strong>and</strong> solutions<br />

Data set naming in a Parallel Sysplex<br />

After reading this chapter, you will see how the ICF catalog has evolved, why<br />

ECS is an attractive proposition, how ECS operates in the OS/390 environment,<br />

<strong>and</strong> how to take advantage of the solutions offered by the changes introduced by<br />

DFSMS/MVS Version 1 Release 5.<br />

Throughout this redbook, the term catalog is defined as the Integrated <strong>Catalog</strong><br />

Facility (ICF) catalog. From January 1, 2000, the two older types of catalog,<br />

VSAM <strong>and</strong> CVOL, will no longer function or be supported. Additionally, as ECS<br />

requires the use of a coupling facility, the term sysplex will be used to indicate a<br />

Parallel Sysplex.<br />

Appendix A, “<strong>Catalog</strong> Search Interface” on page 83 shows samples of the CSI<br />

<strong>and</strong> the performance benefits of using CSI versus the LISTCAT comm<strong>and</strong>.<br />

Appendix B, “What’s Changed <strong>and</strong> What’s New” on page 101 shows the changed<br />

comm<strong>and</strong> syntax <strong>and</strong> messages introduced with ECS.<br />

1.1 ICF <strong>Catalog</strong> Structure <strong>and</strong> Evolution<br />

In order to introduce the concepts associated with ECS, we will revisit some of<br />

the terminology associated with data set access <strong>and</strong> give a high-level overview of<br />

the catalog structure associated with the ICF design.<br />

<strong>Catalog</strong> structure—where data sets are described, how catalogs are managed,<br />

catalog evolution, <strong>and</strong> the catalog performance <strong>and</strong> flexibility needed in a<br />

sysplex—are covered in the topics that follow.<br />

© Copyright <strong>IBM</strong> Corp. 1999 1


1.1.1 <strong>Catalog</strong> Structure<br />

2 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

The ICF catalog records are stored in two components, the basic catalog<br />

structure (BCS) <strong>and</strong> the VSAM volume data set (VVDS). The BCS can be<br />

considered the catalog, whereas the VVDS can be considered an extension of<br />

the VTOC.<br />

The relationship between the BCS <strong>and</strong> the VVDS is one-to-many. That is, a BCS<br />

can point to multiple VVDSs <strong>and</strong> a VVDS can point to multiple BCSs.<br />

The BCS is a VSAM KSDS, <strong>and</strong> its primary function is to point to the volumes on<br />

which a data set is located. The BCS is created when either a user or master<br />

catalog is defined using Access Method Services (AMS). A BCS does not have to<br />

be on the same volume as the data set it references, <strong>and</strong> there can be more than<br />

one BCS on a volume.<br />

The VVDS is a VSAM ESDS that contains the information required to process<br />

VSAM data sets <strong>and</strong>, in a Storage <strong>Management</strong> Subsystem (SMS) environment,<br />

it contains the volume related information for non-VSAM SMS-managed data<br />

sets. There is one VVDS on each DASD volume that contains a VSAM or<br />

SMS-managed data set cataloged in an ICF catalog. The VVDS is always on the<br />

same volume as the data set it references. For this reason, any volume<br />

containing a BCS will also contain a VVDS, because the BCS is itself a VSAM<br />

data set.<br />

The records in both the VVDS <strong>and</strong> BCS are made up of variable length cells <strong>and</strong><br />

subcells. The two cell types that are often referred to are the VSAM volume<br />

record (VVR) <strong>and</strong> the non-VSAM volume record (NVR), which are both held in the<br />

VVDS. The VVR contains information relating to VSAM data sets <strong>and</strong> the NVR<br />

contains information relating to non-VSAM SMS-managed data sets.<br />

1.1.2 Where a Data Set is Described<br />

The BCS, VVDS, <strong>and</strong> VTOC each supply a portion of the information required to<br />

process a data set.<br />

For VSAM data sets:<br />

The BCS contains the following information:<br />

Volume - the volumes with which the data set is associated<br />

Ownership - creation <strong>and</strong> expiration dates<br />

Association - information related to paths, alternate indexes <strong>and</strong> aliases for<br />

catalogs<br />

SMS class information<br />

The VVDS contains the following information:<br />

Data set characteristics<br />

Extent description - allows for more than 16 extents<br />

<strong>Catalog</strong> name - where this data set is cataloged<br />

General information - such as the type of data set<br />

SMS class information


The VTOC contains the following information:<br />

Extent description<br />

For non-VSAM SMS managed data sets:<br />

The BCS contains the following information:<br />

Volume - the volumes with which the data set is associated<br />

Ownership - creation <strong>and</strong> expiration dates<br />

Association - describes alias entries<br />

SMS class information<br />

GDS information in a GDG<br />

The VVDS contains the following information:<br />

Data set characteristics<br />

<strong>Catalog</strong> name - where this data set is cataloged<br />

SMS class information<br />

The VTOC contains the following information:<br />

Extent description<br />

Data set characteristics<br />

For cataloged non-VSAM, non-SMS:<br />

The BCS contains the following information:<br />

Volume - the volumes with which the data set is associated<br />

Ownership<br />

Association - alias information<br />

The VVDS contains no information<br />

The VTOC contains the following information:<br />

Extent description<br />

Data set characteristics<br />

For uncataloged non-VSAM, non-SMS:<br />

The BCS contains no information<br />

The VVDS contains no information<br />

The VTOC contains the following information:<br />

Extent description<br />

Introduction 3


4 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

Data set characteristics<br />

See also Table 1 for a summary of the locations of data set information.<br />

Most data sets will only have entries in one VVDS. The exception is the<br />

multi-volume data set, which will have entries in the VVDS of each volume it is<br />

allocated to.<br />

Table 1. Location of Data Set Information<br />

Information VSAM data set SMS-managed<br />

non-VSAM<br />

data set<br />

Non-SMS<br />

non-VSAM<br />

data set<br />

Volume BCS BCS BCS n/a<br />

Data Set Type BCS BCS BCS n/a<br />

Association BCS BCS BCS n/a<br />

Ownership BCS BCS BCS n/a<br />

SMS Class Info BCS & VVDS BCS & VVDS n/a n/a<br />

Uncataloged<br />

non-VSAM<br />

dataset<br />

Data Set Attributes VVDS VVDS & VTOC VTOC VTOC<br />

Extent Description VVDS & VTOC VTOC VTOC VTOC<br />

<strong>Catalog</strong> Name VVDS VVDS n/a n/a<br />

Because the data set, VTOC, <strong>and</strong> VVDS are on the same volume, backups of the<br />

volume contain all of the information necessary to recover the data in the event of<br />

a volume failure. We discuss the importance associated with this in “BCS <strong>and</strong><br />

VVDS” on page 57.<br />

1.1.3 Accessing <strong>Catalog</strong>s<br />

The original method of accessing a catalog was that it was opened for each user<br />

in their own address space. This gave rise to the situation we have illustrated in<br />

Figure 1.


User A Address Space User B Address Space<br />

Referenced Data Set<br />

|<br />

Open <strong>Catalog</strong><br />

|<br />

Create Control Blocks<br />

<strong>and</strong> Buffers<br />

|<br />

Close <strong>Catalog</strong><br />

|<br />

Delete Control Blocks<br />

<strong>and</strong> Buffers<br />

Figure 1. User Address Space Activity Related to Data Set Open<br />

Referenced Data Set<br />

|<br />

Open <strong>Catalog</strong><br />

|<br />

Create Control Blocks<br />

<strong>and</strong> Buffers<br />

|<br />

Close <strong>Catalog</strong><br />

|<br />

Delete Control Blocks<br />

<strong>and</strong> Buffers<br />

Each user has the overhead of allocating, opening <strong>and</strong> closing each catalog<br />

referenced. Clearly, there were performance gains to be made if catalog access<br />

could be performed by a central function <strong>and</strong> this led to the introduction of the<br />

<strong>Catalog</strong> Address Space (CAS).<br />

1.1.4 <strong>Catalog</strong> Address Space<br />

With the introduction of the CAS, the request for a catalog function, which is<br />

normally through a supervisor call (SVC), is passed to the CAS using OS/390<br />

cross memory services. In Figure 2, we show how the functionality of CAS is<br />

utilized upon data set reference, as it is performed today:<br />

Introduction 5


User A Address Space<br />

Reference<br />

Data Set<br />

Call CAS<br />

Wait<br />

Continue<br />

6 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

Figure 2. CAS Usage for Data Set Reference<br />

<strong>Catalog</strong> Address Space<br />

Process<br />

Request<br />

Control Blocks<br />

<strong>and</strong> Buffers<br />

User B Address Space<br />

Reference<br />

Data Set<br />

Call CAS<br />

Wait<br />

Continue<br />

This shows how the functions are now performed in the CAS. Because most of<br />

the catalog modules <strong>and</strong> control blocks are located in the CAS above the 16MB<br />

line, this also reduces the virtual storage, in a user’s private area, needed to<br />

perform catalog functions.<br />

The CAS will process requests concurrently up to a user-selected value. Refer to<br />

OS/390 V2R7.0 MVS Initialization <strong>and</strong> Tuning Reference, SC28-1752, for more<br />

information on the TASKMAX value. Once this threshold is reached, the caller has<br />

to wait for another task to complete.<br />

In this scenario, the catalog is opened at the first reference <strong>and</strong> remains open<br />

unless one of the following occurs:<br />

The operator issues a comm<strong>and</strong> to close the catalog.<br />

The CAS address space terminates or is restarted by the operator.<br />

The maximum number of catalogs allowed to be open is reached.<br />

To further improve performance, two types of cache were introduced:<br />

In-storage catalog cache (ISC)<br />

<strong>Catalog</strong> data space cache (CDSC)<br />

ISC is the default <strong>and</strong> caches within the CAS address space, whereas, CDSC<br />

caches in a data space associated with the CAS using the virtual look-aside<br />

facility (VLF).<br />

With shared catalogs, each CAS has its own cache, which creates a potential for<br />

integrity exposures. The solutions to these possible exposures are discussed in<br />

later topics.


1.2 Tape Volume <strong>Catalog</strong>s<br />

The internal structure of a tape volume catalog (VOLCAT) is the same as all other<br />

ICF user catalogs. It is a key sequenced data set (KSDS). Its only relationship to<br />

a VVDS is that its self-describing VVRs are in the VVDS of the volume the<br />

VOLCAT resides on.<br />

All rules for sharing <strong>and</strong> protecting a catalog apply for a VOLCAT, as they do for<br />

any other user catalog.<br />

The difference between a VOLCAT <strong>and</strong> other user catalogs is the content. A<br />

VOLCAT contains only library records for SMS-managed tape libraries, or volume<br />

records for SMS managed tape volumes. For both record types there is no<br />

relationship to any VVDS.<br />

There are two varieties of tape volume catalogs available. They are:<br />

The general VOLCAT<br />

The specific VOLCAT<br />

The general VOLCAT contains library records <strong>and</strong> may contain tape volume<br />

records. A specific VOLCAT contains only tape volume records. In a system<br />

managed tape environment, you are required to have at least one general<br />

VOLCAT, <strong>and</strong> you can have multiple, specific VOLCATs. When a VOLCAT is<br />

defined, a catalog connector record is created in the system’s master catalog. In<br />

a shared environment where the master catalog is not shared, an Access Method<br />

Services (AMS) IMPORT CONNECT is needed on all sharing systems to create a<br />

connector record in their master catalog. You do not need to define an alias<br />

pointing to a VOLCAT.<br />

The fixed naming conventions for VOLCATs are:<br />

hlq.VOLCAT.VGENERAL<br />

hlq.VOLCAT.V*<br />

All have three qualifiers, the system default for the high level qualifier (hlq) is<br />

SYS1. If any hlq other than SYS1 is specified, it needs to be reflected in the<br />

LOADxx member in SYS1.PARMLIB as well as in the SYSCATLG member in<br />

SYS1.NUCLEUS, if this is used in your environment.<br />

The ’*’ in the third qualifier of any specific VOLCAT needs to be replaced by the<br />

first digit of the volume serial number range you would like to catalog them in.<br />

Volume records for tape volumes that do have a first digit in volser, for which<br />

there is no specific VOLCAT defined, are stored into the general VOLCAT.<br />

1.3 A Review of the SHAREOPTIONS Parameter<br />

The AMS DEFINE parameter SHAREOPTIONS indicates the level of sharing within<br />

a system <strong>and</strong> across systems. For a catalog, there are only two allowable<br />

specifications of SHAREOPTIONS, either (3,3) or (3,4) with the default being<br />

(3,4).<br />

Introduction 7


1.3.1 Defining the Level of <strong>Sharing</strong> within a System<br />

8 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

The first parameter defines the level of sharing within an OS/390 image. The<br />

value 3 indicates that any number of users can have the catalog open for both<br />

read <strong>and</strong> write, but it is the user’s responsibility to provide protection against<br />

multiple updating. This is not a problem for CAS, as all of its updates take place<br />

from within a single address space. VSAM will prevent other programs from<br />

opening catalogs for any type of output operation. However user programs could<br />

cause damage to catalogs.<br />

1.3.2 Defining the Level of <strong>Sharing</strong> Across Systems<br />

The second parameter specifies the level of sharing across systems. The value 3<br />

indicates that there is no sharing <strong>and</strong> the value 4, indicating sharing.<br />

1.4 <strong>Catalog</strong> Evolution<br />

With parameter value 3, all previously read buffers are considered to be valid <strong>and</strong><br />

do not need to be refreshed from the physical catalog records. This gives good<br />

performance but, if the catalog was actually being shared, corruption or the use<br />

of records that were no longer valid could occur.<br />

Specifying a value of 4 does not, in itself, make a catalog shared, it must also<br />

reside on a DASD volume which was defined as shared. For more information as<br />

to the type of messages that are issued when there are sharing problems, or how<br />

to determine whether a catalog is truly shared, refer to “<strong>Catalog</strong> <strong>Sharing</strong><br />

Problems” on page 77.<br />

If both conditions are met, CAS ensures that each system uses an up-to-date,<br />

valid copy of the catalog at all times, by reading the physical catalog records for<br />

each request.<br />

Ensuring integrity meant that the advantages of the ISC <strong>and</strong> CDSC were lost <strong>and</strong><br />

additional overhead was introduced because the read of the catalog records had<br />

to be protected by issuing a RESERVE request. This was a special form of<br />

enqueue (ENQ) <strong>and</strong> resulted in the DASD volume that the catalog resided on,<br />

being temporarily unavailable to other systems. This was a problem for catalogs<br />

with little update activity, particularly master catalogs, as the previously read<br />

entries were generally still valid.<br />

All ENQs are processed by Global Resource Serialization (GRS), or an<br />

equivalent product, <strong>and</strong> a RESERVE can be processed either as a physical or a<br />

logical operation. Physically, the reserve is passed to Input-Output Supervisor<br />

(IOS), which issues a reserve Channel Comm<strong>and</strong> Word (CCW). Logically, it is<br />

converted to a SYSTEMS ENQ <strong>and</strong> passed to the other systems known to GRS.<br />

Both of these have performance implications. The reserve lacks granularity, as it<br />

will prevent all other systems from accessing any data on the volume reserved,<br />

<strong>and</strong> conversion will delay the read of the catalog records until all systems have<br />

acknowledged the request.<br />

To improve performance, a solution was designed that took advantage of the fact<br />

that the catalog is a VSAM data set <strong>and</strong>, therefore, has cells in the VVDS<br />

describing it.


A VVR was introduced that allows sharing systems to detect changes that had<br />

been made to catalog records. Any system that changes catalog records stores<br />

the Time Of Day (TOD) clock in this VVR, updates a counter, <strong>and</strong> identifies the<br />

change. Because of the TOD clock value, this VVR is generally referred to as the<br />

timestamp VVR, but would be better described as an integrity record or integrity<br />

VVR.<br />

In Figure 3 we show how the CAS utilizes integrity VVRs:<br />

System A<br />

<strong>Catalog</strong><br />

Address<br />

Space<br />

Figure 3. CAS Usage of Integrity VVRs<br />

VVDS<br />

(Integrity VVR<br />

for BCS)<br />

<strong>Catalog</strong> BCS<br />

When CAS opens a catalog, the integrity VVR is read, <strong>and</strong> the TOD <strong>and</strong> counter<br />

values are stored in internal control blocks. Each time that access to the catalog<br />

is required, the VVR is read <strong>and</strong>, by comparing the previously read information<br />

with the latest contents of the record, the CAS is able to determine the validity of<br />

its cached records.<br />

It is necessary to protect the VVR from being updated by another system while<br />

the catalogs records are being processed. To do this, a RESERVE is issued<br />

against the volume containing the VVDS. Although this has the disadvantages<br />

discussed earlier, it does reduce the overall number of I/O requests <strong>and</strong> means<br />

that many of the cached records can be reused.<br />

1.5 Parallel Sysplex Performance Considerations <strong>and</strong> Solutions<br />

Reserve<br />

Reserve<br />

System B<br />

<strong>Catalog</strong><br />

Address<br />

Space<br />

The implementation of Parallel Sysplex has brought with it an increase in the<br />

number of sharing systems. This means that the delays inherent in both reserving<br />

the volume, or converting the request are proportionally increased. Either more<br />

systems are prevented from accessing the volume containing the VVDS, or the<br />

Introduction 9


10 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

elapsed time required for the sharing systems to acknowledge the request<br />

increases. In the topics that follow, we show a non-catalog solution <strong>and</strong> introduce<br />

the concept of <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong>.<br />

1.5.1 Non-<strong>Catalog</strong> Solution<br />

The performance of GRS can be improved by implementing star mode, which<br />

uses a Coupling Facility structure. This produces significant improvements to<br />

GRS performance but is only a partial solution for catalog sharing because it<br />

does not remove the requirement for reading the VVR. We recommend this for its<br />

general improvement to sysplex performance <strong>and</strong> particularly in those<br />

environments where the catalog solution, discussed in the next section, is not an<br />

option.<br />

1.5.2 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong><br />

The solution offered by DFSMS/MVS 1.5, <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> (ECS),<br />

takes advantage of the strength <strong>and</strong> reliability of the existing design, <strong>and</strong> exploits<br />

the well-established architecture of the Coupling Facility structure.<br />

This design uses a Coupling Facility cache structure to contain the integrity VVR<br />

of each active shared catalog. A new option, ECSHARING has been introduced<br />

for use when defining or altering a catalog, see DFSMS/MVS V1R5 Access<br />

Method Services for the Integrated <strong>Catalog</strong> Facility, SC26-4906, to indicate that it<br />

is available for ECS. A catalog is eligible for ECS when all of the following<br />

requirements are met:<br />

It has been defined as or altered to ECSHARING<br />

It has been defined as or altered to SHAREOPTIONS(3,4)<br />

It is on a device which is defined as SHARED<br />

When CAS opens an eligible catalog <strong>and</strong> the system is in catalog sharing mode,<br />

as described in “Activating ECS” on page 18, the integrity VVR is copied into the<br />

Coupling Facility structure. Once this occurs, the systems that share the catalog<br />

do not have to read the VVR to detect change, as they will receive notification<br />

from the Coupling Facility. Also, the requirement to ENQ on the resource is<br />

removed because the Coupling Facility architecture incorporates the necessary<br />

locking. In Figure 4, we show how the integrity VVR utilizes the Coupling Facility:


System A<br />

<strong>Catalog</strong><br />

Address<br />

Space<br />

Coupling<br />

Facility<br />

Integrity VVR<br />

in ECS Cache<br />

Structure<br />

VVDS<br />

(Integrity VVR<br />

for BCS)<br />

<strong>Catalog</strong> BCS<br />

Figure 4. Integrity VVR Coupling Facility Utilization<br />

This is an elegant solution to the performance issues. The elapsed time is<br />

reduced because GRS is no longer used, <strong>and</strong> the number of I/Os is reduced<br />

because the VVR does not have to be read. Also, the new function fits smoothly<br />

alongside the existing reliable <strong>and</strong> robust code, which will still be used for<br />

non-ECS catalogs. Non-ECS catalogs are now described as being in VVDS<br />

mode, which indicates that the VVR is being read from the VVDS.<br />

In the rare circumstance of a connectivity or Coupling Facility structure failure,<br />

the ECS catalogs will revert to VVDS mode, allowing the integrity of the catalogs<br />

to be maintained across such a failure.<br />

It was not our objective to measure performance; however, as part of the<br />

comparisons between AMS <strong>and</strong> CSI, we did observe a significant reduction in<br />

elapsed time when we were in ECS mode. These figures are reflected in Table 2:<br />

Table 2. Sample Timings Used by AMS LISTCAT <strong>and</strong> IGGCSILC<br />

System B<br />

<strong>Catalog</strong><br />

Address<br />

Space<br />

Timings AMS w/ ECS CSI w/ ECS AMS wo/ ECS CSI wo/ ECS<br />

Elapsed Time 11 sec 1 sec 24 sec 1 sec<br />

TCB Time 3.07 sec 0.04 sec 3.14 sec 0.04 sec<br />

SRB Time 0.06 sec 0.01 sec 0.06 sec 0.01 sec<br />

ENQ’s/RESERVEs 9010 18 13515 27<br />

DEQ’s 13515 18 18020 27<br />

We discuss the benefits of using CSI in Appendix A, “<strong>Catalog</strong> Search Interface”<br />

on page 83.<br />

Introduction 11


12 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

DB2 initialization showed gains in three areas:<br />

Reduction in elapsed time (primarily in allocation <strong>and</strong> catalog updates)<br />

Reduction in catalog ASID CPU time<br />

Reduction in GRS ASID CPU time<br />

In “Performance Statistics” on page 47, we also show other areas in which we<br />

were able to observe significant performance benefits.<br />

1.5.3 Coupling Facility Structure Terminology <strong>and</strong> Connectivity<br />

This section is intended to give readers, who are not familiar with Coupling<br />

Facility structures, an overview of the terminology used later in this book. The<br />

terms are:<br />

Coupling facility resource management (CFRM) policy<br />

Connection<br />

Disconnection<br />

Persistence<br />

1.5.3.1 CFRM Policy<br />

The CFRM policy is the description of structures which allows them to be defined<br />

when the policy is activated. For each structure, it specifies the size, the<br />

preferred Coupling Facility <strong>and</strong> structures which should not be placed in the same<br />

coupling facility. It does not define the structure type. The structure type is set by<br />

the application when it connects.<br />

1.5.3.2 Connection<br />

The term connection is used in both a physical <strong>and</strong> a logical context. The physical<br />

connection refers to the data path between the S/390 processor <strong>and</strong> the Coupling<br />

Facility that is used by all structure users. The logical connection refers to the<br />

relationship between an application <strong>and</strong> a structure.<br />

Physical connection is established automatically by OS/390 as part of the IPL<br />

process. Under normal operation this link will not be broken.<br />

Logical connection is made by OS/390 services when an application issues the<br />

IXLCONN macro.<br />

1.5.3.3 Disconnection<br />

Disconnection can occur if an application issues the IXLDISC macro, or if there is<br />

a failure of the physical link.<br />

1.5.3.4 Persistence<br />

When the last user disconnects from a structure, it can be kept or deleted from<br />

the Coupling Facility. If it is kept it is described as persistent. The structure used<br />

by ECS is not persistent <strong>and</strong> the operational implications of this are discussed in<br />

“Loss of ECS Mode” on page 18.<br />

The macros mentioned are documented in the OS/390 V2R7.0 MVS<br />

Programming: Sysplex Services Reference, GC28-1772.


1.6 Data Set Naming in a Parallel Sysplex<br />

In a sysplex, with all of the DASD shared, there is no requirement for each<br />

system to have its own master catalog. This has the advantage of reducing<br />

maintenance activities such as defining aliases in multiple master catalogs, but it<br />

also means that the introduction of new releases of products, such as language<br />

compilers, which can require multiple versions of execution procedures.<br />

This requirement has been addressed by Extended Alias Support by using<br />

system symbols, which can be system unique, to resolve data set references to<br />

different physical data sets on individual systems. This is implemented by a new<br />

AMS DEFINE ALIAS parameter SYMBOLICRELATE, <strong>and</strong> can be used for defining<br />

aliases of user catalogs or non-VSAM (non-GDS) data sets.<br />

The implementation of Extended Alias Support is discussed in “Implementing<br />

Extended Alias Support” on page 30.<br />

Introduction 13


14 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong>


Chapter 2. Planning<br />

This chapter will discuss the general concepts <strong>and</strong> considerations of a shared<br />

catalog environment, <strong>and</strong> the planning required to implement ECS <strong>and</strong> Extended<br />

Alias Support. You will learn how to determine which parameters are required for<br />

input to the implementation steps that are discussed in Chapter 3,<br />

“Implementation” on page 23.<br />

In the following sections we will describe:<br />

Planning for the new functions of DFSMS/MVS 1.5<br />

Planning for ECS implementation<br />

Extended Alias Support<br />

2.1 Planning for the New Functions of DFSMS/MVS 1.5<br />

We recommend that ECS <strong>and</strong> Extended Alias Support not be implemented until<br />

all of the sharing systems are at a DFSMS/MVS 1.5 level that includes the<br />

Program Temporary Fix (PTF) for OW39071. The reasons for waiting until all<br />

systems are at this level are:<br />

Lower level systems will be unable to resolve extended alias names.<br />

If catalogs are in ECS mode, they are not available to lower level systems.<br />

OW39071 introduces code to increase the operational capability of ECS.<br />

This redbook is written, based on our system with the code for OW39071<br />

installed, <strong>and</strong> the information in this redbook will not apply to any system that<br />

does not have this fix applied.<br />

As with all new releases of software where there will be coexistence between old<br />

<strong>and</strong> new levels, it is imperative to read the DFSMS/MVS V1R5 Planning for<br />

Installation, SC26-4919 <strong>and</strong> to obtain the Preventive Service Planning (PSP)<br />

information from your local <strong>IBM</strong> Support Center. This is particularly important if<br />

ECS is to be exploited, because the indication that a catalog is in ECS mode is<br />

achieved by the use of a new ENQ, which has to be recognized by lower level<br />

systems to be effective.<br />

As part of the planning for the new release, this may also be an appropriate time<br />

to review the general catalog structure <strong>and</strong> parameters before considering ECS.<br />

Some areas for consideration are suggested below.<br />

ECS is designed to reduce the overhead associated with ensuring the integrity of<br />

shared catalogs. There have been no changes in the general performance<br />

provided by ISC <strong>and</strong> CDSC, however other changes to the environment, such as<br />

new processors with more real storage, might make it appropriate to increase the<br />

size of the CDSC.<br />

Some of the recommendations for DASD performance might no longer be valid.<br />

For example:<br />

The use of IMBED is ignored for new data sets in DFSMS/MVS 1.5.<br />

The use of REPLICATE is ignored for new data sets in DFSMS/MVS 1.5.<br />

© Copyright <strong>IBM</strong> Corp. 1999 15


16 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

Positioning of the catalog next to the VTOC.<br />

All of these techniques were based on the characteristics of DASD where the<br />

data was physically contiguous. However modern DASD is generally designed to<br />

have data dispersed across several internal disks <strong>and</strong> there is no longer any<br />

performance advantage in attempting to position the data.<br />

2.2 Planning for ECS Implementation<br />

This section will discuss the criteria for catalogs to be in ECS, <strong>and</strong> the sizing of<br />

the cache structure required to support them. In the topics that follow we cover:<br />

Determining which catalogs utilize ECS<br />

Determining the number of catalogs<br />

Cache structure description<br />

Security considerations<br />

Cache structure sizing<br />

CAS <strong>and</strong> the structure<br />

Operational issues<br />

2.2.1 Determining Which <strong>Catalog</strong>s Utilize ECS<br />

All currently shared user catalogs should be altered to ECSHARING, unless they<br />

are shared by systems that do not have ECS capability. This means they are<br />

either not at DFSMS/MVS 1.5 plus OW39071, or not in the same sysplex. It may<br />

be possible to split catalogs that fall into this category, <strong>and</strong> create an ECS <strong>and</strong><br />

non-ECS catalog.<br />

Master catalogs that are shared, but defined with SHAREOPTIONS(3,3), should<br />

be altered to SHAREOPTIONS(3,4) <strong>and</strong> ECSHARING. This will maintain the<br />

integrity without an impact to performance.<br />

Any catalog that is currently not shared, because of the GRS/RESERVE<br />

overhead, should be altered to use ECS.<br />

2.2.2 Determining the Number of <strong>Catalog</strong>s<br />

The DFSMS/MVS 1.5 implementation of ECS allows a maximum of 1024 catalogs<br />

in ECS mode on each system. However, the total number of ECS catalogs in the<br />

sysplex can be greater than 1024, as each catalog does not have to be open on<br />

all systems. The theoretical limit, if every catalog is only in use by one system, is<br />

1024 multiplied by the number of systems in the sysplex.<br />

2.2.3 Cache Structure Description<br />

A practical limitation is set by the CATMAX parameter which restricts the number<br />

of open catalogs to 255 per system. Beyond this number, a catalog has to be<br />

closed by the CAS to open a new one. For a more detailed explanation of<br />

CATMAX refer to OS/390 V2R7.0 MVS System Comm<strong>and</strong>s, GC28-1781.<br />

The structure name must be SYSIGGCAS_ECS.


The structure has a disposition of delete, meaning that when the last system<br />

disconnects from it, it is deleted from the Coupling Facility. This has implications<br />

for operations <strong>and</strong> is described in 3.1, “Implementing <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong>”<br />

on page 23.<br />

2.2.4 Security Considerations<br />

When the CAS attempts to connect to the cache structure, a check is made to<br />

determine whether it has the authority to do so. The resource is in the Resource<br />

Access Control Facility (RACF) Facility class <strong>and</strong> is called IXLSTR.SYSIGGCAS_ECS.<br />

Because the CAS is a started task, this may not be an issue but should be<br />

checked with the installation security administrator.<br />

2.2.5 Cache Structure Sizing<br />

The storage allocated to the structure has three elements:<br />

Fixed controls<br />

Data<br />

Directory<br />

The storage used for the fixed controls is required by the Coupling Facility<br />

microcode in order to maintain <strong>and</strong> process the structure contents. The data<br />

portion contains the integrity VVRs, one per ECS catalog, <strong>and</strong> the directory<br />

allows the VVRs to be located.<br />

In order to accurately calculate the storage required, the values in Managing<br />

<strong>Catalog</strong>s, SC26-4914 must be applied to the formula in the S/390 PR/SM<br />

Planning Guide, GA22-7236. This calculation is, in the context of the ECS cache,<br />

more precise than necessary, for reasons that are discussed below.<br />

The structure size is specified in 1KB blocks but will be allocated in multiples of<br />

256KB because of the architecture of the Coupling Facility.<br />

If the cache structure becomes full, no more catalogs will be eligible for sharing<br />

unless the structure is made larger. This means disconnecting all systems from<br />

the structure, reverting to VVDS mode <strong>and</strong> redefining the structure. We therefore<br />

recommend that either a size 25% larger than the size calculated be specified, or<br />

that the structure is defined with the INITSIZE <strong>and</strong> SIZE parameters specified. The<br />

INITSIZE parameter specifies the initial storage allocation, <strong>and</strong> SIZE is a value to<br />

which the structure will be increased dynamically. Refer to OS/390 V2R7.0 MVS<br />

Setting Up a Sysplex, GC28-1779 for more information about these parameters.<br />

At the present time, the value of the fixed controls varies from approximately<br />

40KB to 70KB, <strong>and</strong> the value of each directory element varies from 188 to 208<br />

bytes. Each catalog in ECS mode requires one data element of 4KB to contain<br />

the VVR, <strong>and</strong> one directory entry. This permits a simple rule of thumb calculation.<br />

The fixed controls <strong>and</strong> approximately 40 VVRs can be contained in the first<br />

Planning 17


18 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

256KB, <strong>and</strong> each further allocation of 256KB will hold approximately 60 VVRs.<br />

Table 3 shows examples of the calculations.<br />

Table 3. Sample ECS Structure Sizes for a Currently Supported Coupling Facility<br />

Expected ECS-Active<br />

<strong>Catalog</strong>s<br />

Plus 25% for Expansion ECS Structure Size<br />

31 39 256 KB<br />

80 100 512 KB<br />

128 160 768 KB<br />

176 220 1 MB<br />

371 464 2 MB<br />

760 950 4 MB<br />

1100 1375 6 MB<br />

1536 1920 8 MB<br />

1920 2400 10 MB<br />

Although the storage allocations might appear to be large values, in the context<br />

of a cache structure 10MB which would support over two thous<strong>and</strong> catalogs, this<br />

would be considered comparatively small.<br />

2.2.6 Activating ECS<br />

In addition to the catalog eligibility requirements we discussed in “<strong>Enhanced</strong><br />

<strong>Catalog</strong> <strong>Sharing</strong>” on page 10, there are four requirements that must be met<br />

before any catalog can be used in ECS mode:<br />

All sharing systems are at Version DFSMS/MVS 1.5, with OW39071 PTF<br />

applied.<br />

The structure has been defined <strong>and</strong> the CFRM policy activated.<br />

At least one catalog has been defined with ECSHARING.<br />

The AUTOADD comm<strong>and</strong> has been issued.<br />

The CFRM policy can be activated before or after the implementation of<br />

DFSMS/MVS 1.5. If it is before implementation, the CAS will connect to the<br />

structure when the new system is IPLed. If it is after implementation, the CAS exit<br />

routines will receive notification when the structure is activated <strong>and</strong> will connect<br />

at that time.<br />

The AUTOADD comm<strong>and</strong> <strong>and</strong> the ECSHARING parameter cannot be used until<br />

DFSMS/MVS 1.5 is implemented.<br />

The AUTOADD comm<strong>and</strong> can be issued on any system in the sysplex after which the<br />

structure has been connected. The AUTOADD status is communicated to the other<br />

systems by updating a control record in the structure. The next reference to any<br />

catalog with ECSHARING set will cause ECS mode to be entered for that catalog.<br />

2.2.7 Loss of ECS Mode<br />

There are situations that, in order to maintain the integrity of shared catalogs, will<br />

cause ECS to be turned off across the sysplex <strong>and</strong> VVDS mode to be used.


These situations are in two categories; those where failures have occurred <strong>and</strong><br />

the loss is predictable, <strong>and</strong> those during apparently normal operation.<br />

The predictable loss of ECS mode could happen for any of the following reasons:<br />

DISCONNECT comm<strong>and</strong> is issued<br />

Coupling Facility failure<br />

Coupling Facility connectivity failure<br />

The first two cases are essentially the same. The DISCONNECT comm<strong>and</strong> is<br />

intended for use when a Coupling Facility is required for scheduled maintenance<br />

<strong>and</strong> allows a controlled exit from ECS mode.<br />

In the third case, the system that loses connectivity is still active <strong>and</strong> h<strong>and</strong>ling<br />

catalog requests, <strong>and</strong> therefore, to maintain integrity, all systems must use VVDS<br />

mode until the connectivity is restored.<br />

There is no automatic rebuild of the structure in another Coupling Facility. The<br />

planner will need to establish procedures that either allow the system to run in<br />

VVDS mode or have the structure defined elsewhere, <strong>and</strong> a new CFRM policy be<br />

activated.<br />

When the situations described previously have been corrected <strong>and</strong> all systems<br />

have connectivity to the structure, the AUTOADD comm<strong>and</strong> will need to be issued for<br />

the sysplex to return to ECS mode.<br />

The unexpected loss of ECS mode could happen during the following situations:<br />

IPL<br />

CAS restart<br />

To plan for these circumstances, it is necessary to underst<strong>and</strong> three elements of<br />

the relationship between CAS <strong>and</strong> the cache structure:<br />

When does connection occur<br />

When does disconnection occur<br />

When the structure is deleted<br />

The CAS connects to the structure when it receives its first catalog request. The<br />

CAS will disconnect during restart processing. During the IPL process, you may<br />

notice the CAS issue two connects. This is normal operation <strong>and</strong> can be<br />

discounted. If an error occurs in the CAS, or if the operator issues the RESTART<br />

comm<strong>and</strong>, a disconnect will also take place.<br />

It is, therefore, possible for all systems to have an active CAS but for there to be<br />

no connections to the structure. Because the structure is not persistent, it will<br />

automatically be deleted in this situation <strong>and</strong> VVDS mode is entered.<br />

2.2.8 Operational Issues<br />

Because the MODIFY CATALOG comm<strong>and</strong> has new parameters, operations personnel<br />

will require education on the ECS function <strong>and</strong> the effects of these new<br />

parameters. We discuss these parameters in detail in Chapter 4, “Operations” on<br />

page 35.<br />

Planning 19


2.3 Extended Alias Support<br />

20 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

If there will be a period of time when the sysplex will be a mix of ECS <strong>and</strong><br />

non-ECS capable systems, it may not be possible to activate sharing.<br />

The interaction between ECS <strong>and</strong> non-ECS systems is dependent on them being<br />

part of the same GRS configuration. Any combination of systems which are not in<br />

such a configuration is not supported <strong>and</strong> will cause catalog corruption.<br />

Recovery scenarios for connectivity <strong>and</strong> Coupling Facility failures will need to be<br />

reviewed <strong>and</strong> amended to allow for the new structure.<br />

Automation procedures should be implemented to check for the presence of the<br />

AUTOADD status.<br />

This support provides the capability for systems in a sysplex, which are sharing<br />

catalogs, to have references to either data set names or catalogs be translated to<br />

a different name for accessing the physical data.<br />

The following is an example of the AMS statements required for an extended<br />

alias:<br />

DEFINE ALIAS (NAME(CEE.SCEELINK) -<br />

SYMBOLICRELATE('CEE.&LELEVEL..SCEELINK'))<br />

These statements mean that references to a data set called CEE.SCEELINK will<br />

be modified depending on the value of the symbol &LELEVEL. This symbol must be<br />

defined in SYS1.PARMLIB member IEASYMxx, <strong>and</strong> can be defined either as a<br />

global value which applies to every system in the sysplex, or as a local value<br />

which applies to an individual system. If a symbol is defined as both a global <strong>and</strong><br />

a local, the local value will be used on the system to which it applies.<br />

The following shows an extract from an IEASYMxx member. For a full description,<br />

refer to OS/390 V2R7.0 MVS Initialization <strong>and</strong> Tuning Reference, SC28-1752:<br />

SYSDEF SYSCLONE(&SYSNAME(3:2))<br />

SYMDEF(&SYSR2='&SYSR1(1:5).2')<br />

SYMDEF(&LELEVEL='R170’)<br />

SYSDEF HWNAME(SCZP601)<br />

LPARNAME(A10)<br />

SYSNAME(SC65)<br />

SYMDEF(&LELEVEL=’R180’)<br />

The first SYSDEF statement defines defaults for any system not specifically<br />

referenced. The SYMDEF parameter sets &LELEVEL to R170. The second SYSDEF<br />

statement defines values for a system with a system name of SC65 <strong>and</strong> for this<br />

system &LELEVEL will have a value of R180. The result of this, on a nine-way<br />

sysplex, would be that eight of the systems would change the data set<br />

CEE.SCEELINK references to CEE.R170.SCEELINK <strong>and</strong> system SC65 would<br />

change it to CEE.R180.SCEELINK.<br />

It is especially important to ensure that the job runs on the required system. In the<br />

example above, a job requiring CEE.R180.SCEELINK must be run on SC65. If it


is run on any other system it may appear to have been successful but the results<br />

could be incorrect.<br />

We detail the steps needed to implement Extended Alias Support in<br />

“Implementing Extended Alias Support” on page 30.<br />

Tip<br />

An alias becomes active as soon as it is defined, but system symbols require<br />

an IPL to become active. If a symbol is not defined on a particular system, the<br />

alias can not be resolved <strong>and</strong> the user will see an allocation error, stating data<br />

set not found. There is no indication given that a symbol was not resolved.<br />

Applying Alias Name to <strong>Catalog</strong>s:<br />

The option to apply an extended alias to the name of a user catalog should be<br />

treated with caution. It is intended to allow system builders to clone systems <strong>and</strong>,<br />

if used in a production environment, requires careful planning <strong>and</strong> control to<br />

ensure that jobs <strong>and</strong> TSO logons were on the correct system.<br />

Planning 21


22 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong>


Chapter 3. Implementation<br />

In this chapter we discuss the steps required to implement two of the new<br />

functions that were introduced with DFSMS/MVS Version 1 Release 5, <strong>Enhanced</strong><br />

<strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> Extended Alias Support. You can use this information to<br />

successfully implement ECS in your environment. In the following sections we will<br />

cover:<br />

Implementing <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong><br />

Implementing Extended Alias Support<br />

The information presented will allow you to quickly implement ECS with minimal<br />

modification of our examples.<br />

3.1 Implementing <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong><br />

In this section we detail the steps required to enable the CAS in order to use<br />

ECS. In summary, these steps are:<br />

Define the CFRM policy<br />

Activate the CFRM policy<br />

Verify connection to the CF structure<br />

Identify catalogs for ECS<br />

Issue the AUTOADD comm<strong>and</strong><br />

Some of these steps must be performed manually, while others occur<br />

automatically after certain criteria is met. For each step of the process, we<br />

provide example definitions, control statements <strong>and</strong> comm<strong>and</strong>s. Additionally, we<br />

included the system messages <strong>and</strong> status displays related to ECS for the CAS.<br />

3.1.1 Underst<strong>and</strong>ing the ITSO Environment Setup<br />

In our ITSO test environment, the sysplex consisted of three OS/390 V2R7<br />

systems with DFSMS/MVS V1R5 with OW39071 applied. The system ids were<br />

SC63, SC64 <strong>and</strong> SC65. We also had two Coupling Facilities, CF03 <strong>and</strong> CF04.<br />

The structure of our sysplex is shown in Figure 5. All three systems share a<br />

master catalog <strong>and</strong> a user catalog, which reside on volume SBOX01.<br />

© Copyright <strong>IBM</strong> Corp. 1999 23


SC63<br />

OS/390<br />

V2R7<br />

3.1.2 Defining the CFRM Policy<br />

24 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

CF03<br />

Coupling<br />

Facilities CF04<br />

SC64<br />

OS/390<br />

V2R7<br />

SBOX01<br />

MCAT<br />

VVDS<br />

Figure 5. Structure Diagram of the ITSO Parallel Sysplex<br />

Shared<br />

Master<br />

<strong>Catalog</strong><br />

SC65<br />

OS/390<br />

V2R7<br />

We used the parameters provided in Managing <strong>Catalog</strong>s, SC26-4914, <strong>and</strong> the<br />

algorithms from the S/390 PR/SM Planning Guide, GA22-7236 to determine that<br />

a CF structure size of 10 MB would be more than adequate for our requirements.<br />

A structure of this size is large enough for 1920 ECS-active catalogs plus the<br />

recommended buffer of 25 percent. Figure 6 shows a sample job to update an<br />

existing CFRM policy. In most cases, you will want to give the structure name <strong>and</strong><br />

size to your systems programmer, who will add this definition to your existing<br />

structures. If this is not done <strong>and</strong> only this definition is included, all others will be<br />

lost once this new policy is activated.


DEFCFRMP JOB (999,POK),'CFRM',CLASS=A,REGION=4096K,<br />

// MSGCLASS=X,TIME=10,MSGLEVEL=(1,1),NOTIFY=&SYSUID<br />

//STEP1 EXEC PGM=IXCMIAPU<br />

//SYSPRINT DD SYSOUT=*<br />

//SYSABEND DD SYSOUT=*<br />

//SYSIN DD *<br />

DATA TYPE(CFRM) REPORT(YES)<br />

DEFINE POLICY NAME(CFRM01) REPLACE(YES)<br />

/*<br />

CF NAME(CF03) DUMPSPACE(2048) PARTITION(F) CPCID(00)<br />

TYPE(009672) MFG(<strong>IBM</strong>) PLANT(02) SEQUENCE(000000049305)<br />

CF NAME(CF04) DUMPSPACE(2048) PARTITION(D) CPCID(00)<br />

TYPE(009672) MFG(<strong>IBM</strong>) PLANT(02) SEQUENCE(000000049305)<br />

(include existing structure definitions)<br />

STRUCTURE NAME(SYSIGGCAS_ECS)<br />

INITSIZE(5120)<br />

SIZE(10240)<br />

PREFLIST(CF03,CF04)<br />

Figure 6. Running the Administrative Data Utility (IXCMIAPU)<br />

The relevant parameters in the definition for the ECS structure are:<br />

NAME(SYSIGGCAS_ECS) specifies the name of the structure used by CAS for ECS.<br />

INITSIZE(5120) specifies the initial size to be allocated for the structure in the<br />

coupling facility.<br />

SIZE(10240) specifies the maximum size (in kilobytes) to be allocated for the<br />

structure in the coupling facility.<br />

PREFLIST(CF03,CF04) specifies an ordered list of CF names from which the<br />

system is to select one for allocation of the structure.<br />

See OS/390 V2R7.0 MVS Setting Up a Sysplex, GC28-1779, for a complete<br />

description of all parameters for the Administrative Data Utility, IXCMIAPU.<br />

3.1.3 Activating the CFRM Policy<br />

After defining the cache structure for SYSIGGCAS_ECS in the CFRM policy, we<br />

activated that policy by issuing the SETXCF START,POLICY comm<strong>and</strong>. This can be<br />

issued from any system within the sysplex. Figure 7 shows the comm<strong>and</strong> <strong>and</strong> the<br />

system messages that indicate successful activation. Your systems programmer<br />

or systems operator may have to activate the updated CFRM policy for you, if you<br />

do not have the required authority.<br />

Implementation 25


Figure 7. How to Start Using the CFRM Policy<br />

3.1.4 Connecting to the CF Structure<br />

26 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

SETXCF START,POLICY,POLNAME=CFRM01,TYPE=CFRM<br />

IXC511I START ADMINISTRATIVE POLICY CFRM01 FOR CFRM ACCEPTED<br />

IXC513I COMPLETED POLICY CHANGE FOR CFRM. 919<br />

CFRM01 POLICY IS ACTIVE.<br />

IEC377I ENHANCED CATALOG SHARING: CONNECT COMPLETE<br />

IEC377I ENHANCED CATALOG SHARING: AUTOADD IS NOT CURRENTLY ENABLED<br />

IXL014I IXLCONN REQUEST FOR STRUCTURE SYSIGGCAS_ECS 920<br />

WAS SUCCESSFUL. JOBNAME: CATALOG ASID: 002A<br />

CONNECTOR NAME: IXCLO00D0001 CFNAME: CF04<br />

IXL015I STRUCTURE ALLOCATION INFORMATION FOR 921<br />

STRUCTURE SYSIGGCAS_ECS, CONNECTOR NAME IXCLO00D0001<br />

CFNAME ALLOCATION STATUS/FAILURE REASON<br />

-------- ---------------------------------<br />

CF04 STRUCTURE ALLOCATED<br />

CF03 NO CONNECTIVITY<br />

As you can see from the IEC377I message in Figure 7, CAS automatically<br />

connected to the ECS structure as soon as it became available. All active<br />

systems in a sysplex are notified by the Coupling Facility about the altered<br />

structure <strong>and</strong> any other system’s CAS will connect to the structure at the same<br />

time. We recommend that you then issue a MODIFY CATALOG,ECSHR(STATUS)<br />

comm<strong>and</strong> to verify the status of the Coupling Facility connection. From the<br />

corresponding status display shown in Figure 8, we could see that none of the<br />

catalogs currently open were eligible for ECS.<br />

F CATALOG,ECSHR(STATUS)<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC380I ENHANCED CATALOG SHARING 071<br />

*CAS**************************************************************<br />

* CF Connection: Connected *<br />

* ------------------CATALOG------------------- -----STATUS------ *<br />

* UCAT.OS3R7V01.VO37CAT Inact(NotElig) *<br />

* UCAT.VSBOX09 Inact(NotElig) *<br />

* UCAT.VSBOX01 Inact(NotElig) *<br />

* CATALOG.SHRICF1.VIODFPK Inact(NotElig) *<br />

* MCAT.SANDBOX.VSBOX01 Inact(NotElig) *<br />

*CAS**************************************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

Figure 8. CAS ECS Status Display After Connecting to the Coupling Facility<br />

During initial program load (IPL), the CAS attempts to connect to the ECS<br />

structure in the Coupling Facility. For reference, we included the results that<br />

occur when an ECS structure has not been defined. Figure 9 shows the<br />

corresponding system error messages <strong>and</strong> the output from a CAS ECS status<br />

display. We will discuss the new MODIFY CATALOG comm<strong>and</strong>s in more detail in<br />

Chapter 4.1, “Using the Modify <strong>Catalog</strong> Comm<strong>and</strong>” on page 35. It is worth noting<br />

that for a Connect Failure status, the CAS gives the return <strong>and</strong> reason codes from<br />

the failing IXLCONN request. These codes are documented in OS/390 V2R7.0 MVS<br />

Programming: Sysplex Services Reference, GC28-1772. In this case, the


explanation is "The active CFRM policy for the installation does not specify the<br />

structure" for reason code xxxx0C05.<br />

IXL013I IXLCONN REQUEST FOR STRUCTURE SYSIGGCAS_ECS FAILED. 696<br />

JOBNAME: CATALOG ASID: 002A CONNECTOR NAME: N/A<br />

IXLCONN RETURN CODE: 0000000C, REASON CODE: 02010C05<br />

IEC377I ENHANCED CATALOG SHARING: NOT CONNECTED:<br />

228-003(000C-0C05),SI<br />

IEC350I CATALOG ADDRESS SPACE MODIFY COMMAND AVAILABLE<br />

IEC368I - CATALOG INITIALIZATION 699<br />

THE MULTILEVEL ALIAS FACILITY HAS BEEN INITIALIZED<br />

THE NUMBER OF LEVELS OF QUALIFICATION IS 1<br />

F CATALOG,ECSHR(STATUS)<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC380I ENHANCED CATALOG SHARING 316<br />

*CAS**************************************************************<br />

* CF Connection: Connect Failure RC: 0000000C RSN: 02010C05 *<br />

* ------------------CATALOG------------------- -----STATUS------ *<br />

* UCAT.VSBOX09 Inact(Unknown) *<br />

* UCAT.VSBOX01 Inact(Unknown) *<br />

* CATALOG.SHRICF1.VIODFPK Inact(Unknown) *<br />

* MCAT.SANDBOX.VSBOX01 Inact(Unknown) *<br />

*CAS**************************************************************<br />

Figure 9. CAS Connect Failure to ECS Structure at IPL <strong>and</strong> Status Display<br />

It is also possible to verify the status of the ECS structure in the Coupling Facility<br />

by issuing the DISPLAY XCF,STRUCTURE comm<strong>and</strong> for SYSIGGCAS_ECS. Figure 10<br />

shows the comm<strong>and</strong> <strong>and</strong> the responses we received. From this display you can<br />

also see which other systems are connected to the structure. Note that the ECS<br />

structure is allocated with a disposition of DELETE, which will take effect when<br />

the last system in a sysplex disconnects from the structure.<br />

Implementation 27


28 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

D XCF,STR,STRNAME=SYSIGGCAS_ECS<br />

IXC360I 09.41.42 DISPLAY XCF 930<br />

STRNAME: SYSIGGCAS_ECS<br />

STATUS: ALLOCATED<br />

POLICY SIZE : 10240 K<br />

POLICY INITSIZE: 5120 K<br />

REBUILD PERCENT: N/A<br />

DUPLEX : DISABLED<br />

PREFERENCE LIST: CF03 CF04<br />

EXCLUSION LIST IS EMPTY<br />

ACTIVE STRUCTURE<br />

----------------<br />

ALLOCATION TIME: 04/07/1999 09:41:07<br />

CFNAME : CF04<br />

COUPLING FACILITY: 009672.<strong>IBM</strong>.02.000000049305<br />

PARTITION: D CPCID: 00<br />

ACTUAL SIZE : 5120 K<br />

STORAGE INCREMENT SIZE: 256 K<br />

VERSION : B20F9A13 A12AC040<br />

DISPOSITION : DELETE<br />

ACCESS TIME : NOLIMIT<br />

MAX CONNECTIONS: 32<br />

# CONNECTIONS : 2<br />

CONNECTION NAME ID VERSION SYSNAME JOBNAME ASID STATE<br />

---------------- -- -------- -------- -------- ---- ---------------<br />

IXCLO00D0001 01 00010001 SC63 CATALOG 002A ACTIVE<br />

IXCLO00D0002 02 00020001 SC64 CATALOG 002A ACTIVE<br />

Figure 10. XCF Structure Display for SYSIGGCAS_ECS<br />

3.1.5 Setting the ECSHR Attribute for Selected <strong>Catalog</strong>s<br />

For the catalogs that we selected to take advantage of this sharing protocol, we<br />

have to identify them as being ECS-eligible. This is accomplished by means of<br />

the ECSHARING attribute. On our systems, we chose to make the master catalog<br />

<strong>and</strong> one user catalog eligible for ECS. Figure 11 shows a sample job using the<br />

AMS ALTER comm<strong>and</strong> to alter the ECSHARING attribute for a user catalog. This job<br />

can run on any system sharing this catalog. Other catalogs kept their default<br />

attribute of NOECSHARING <strong>and</strong> are displayed by the CAS as Inact(NotElig).<br />

//ALTERCAT JOB (999,POK),'TATERS2',CLASS=A,REGION=4096K,<br />

// MSGCLASS=X,TIME=10,MSGLEVEL=(1,1),NOTIFY=&SYSUID<br />

//STEP1 EXEC PGM=IDCAMS<br />

//SYSPRINT DD SYSOUT=*<br />

//CATVOL DD DISP=OLD,VOL=SER=SBOX01,UNIT=3390<br />

//SYSIN DD *<br />

ALTER -<br />

UCAT.VSBOX01 -<br />

ECSHR -<br />

FILE(CATVOL)<br />

/*<br />

Figure 11. Altering the ECSHR Attribute


For test purposes, we defined another user catalog, using the AMS DEFINE job<br />

shown in Figure 12:<br />

//DEFUCAT JOB (999,POK),'TATERS2',CLASS=A,REGION=4096K,<br />

// MSGCLASS=X,TIME=10,MSGLEVEL=(1,1),NOTIFY=&SYSUID<br />

//STEP1 EXEC PGM=IDCAMS<br />

//SYSPRINT DD SYSOUT=*<br />

//SYSIN DD *<br />

DEFINE USERCATALOG -<br />

(NAME(UCAT.VSTEST1) -<br />

CYL(2 1) -<br />

VOL(SBOX02) -<br />

ECSHARING -<br />

ICFCATALOG )<br />

/*<br />

Figure 12. Defining a User <strong>Catalog</strong> with the ECSHR Attribute<br />

3.1.6 Issuing the Automatic Add Comm<strong>and</strong><br />

Finally, we issued a MODIFY CATALOG,ECSHR(AUTOADD) comm<strong>and</strong> to signal to the CAS<br />

to automatically add ECS-eligible catalogs to the ECS structure. This will happen<br />

for any ECS-eligible catalog the next time it is referenced. In our case, this<br />

occurred when we issued the MODIFY CATALOG,ECSHR(STATUS) comm<strong>and</strong> which<br />

counts as a reference to the catalogs. Figure 13 shows both these comm<strong>and</strong>s<br />

<strong>and</strong> the corresponding system messages that are returned. Notice that the<br />

Coupling Facility connection status changed to AutoAdd, <strong>and</strong> the altered catalogs’<br />

status to Active.<br />

F CATALOG,ECSHR(AUTOADD)<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC377I ENHANCED CATALOG SHARING: AUTOADD ENABLED<br />

IEC377I ENHANCED CATALOG SHARING: ALL ELIGIBLE CATALOGS ENABLED<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

F CATALOG,ECSHR(STATUS)<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC380I ENHANCED CATALOG SHARING 336<br />

*CAS**************************************************************<br />

* CF Connection: AutoAdd *<br />

* ------------------CATALOG------------------- -----STATUS------ *<br />

* UCAT.OS3R7V01.VO37CAT Inact(NotElig) *<br />

* UCAT.VSBOX09 Inact(NotElig) *<br />

* UCAT.VSBOX01 Active *<br />

* CATALOG.SHRICF1.VIODFPK Inact(NotElig) *<br />

* MCAT.SANDBOX.VSBOX01 Active *<br />

*CAS**************************************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

Figure 13. Enabling the Automatic Add Function <strong>and</strong> Status Display<br />

Once the MODIFY CATALOG,ECSHR(AUTOADD) comm<strong>and</strong> has been issued on one<br />

system, all the CAS in the sysplex recognize this <strong>and</strong> start using this function.<br />

Implementation 29


30 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

Additionally, when the ECSHR attribute is now set for a shared catalog, it will<br />

automatically be added to the ECS structure.<br />

All information about the Coupling Facility connections <strong>and</strong> the catalogs using<br />

ECS is kept in the ECS structure. This information will be lost when the last<br />

system in a sysplex disconnects from the structure. In this case, you will have to<br />

issue the MODIFY CATALOG,ECSHR(AUTOADD) comm<strong>and</strong> again to restart that function.<br />

3.2 Implementing Extended Alias Support<br />

In this section we discuss how to implement <strong>and</strong> begin using Extended Alias<br />

Support to access different non-VSAM data sets on different systems, using the<br />

same data set name. In this topic we describe:<br />

How to set the system symbols<br />

How to define an extended alias<br />

How to refer to an extended alias<br />

In the examples that follow we used load libraries for different releases of the<br />

Language Environment for OS/390. For all the steps involved we provide<br />

examples of definition <strong>and</strong> control statements, as well as related LISTCAT<br />

comm<strong>and</strong> <strong>and</strong> job output.<br />

3.2.1 Setting the System Symbols<br />

System symbols are variables that are used to make system definitions more<br />

flexible in a shared system environment. However, introducing this flexibility can<br />

increase the potential for pointing users to libraries or data sets that they did not<br />

want to access. For this reason, we recommend that you carefully consider the<br />

system symbols that you use <strong>and</strong> the effect that they may have in your<br />

environment.<br />

System symbols are set using PARMLIB member IEASYMxx. For a<br />

comprehensive description of statements <strong>and</strong> parameters, please refer to the<br />

OS/390 V2R7.0 MVS Initialization <strong>and</strong> Tuning Reference, SC28-1752. When<br />

specified in other PARMLIB members or in JCL, system symbols will be<br />

substituted by their current values on each system. Because an IPL is required to<br />

set the symbols on each system, you should give careful consideration to the<br />

names you are going to use before applying them to your environment.<br />

With DFSMS/MVS 1.4, you could use system symbols, for example &SYSR1, to<br />

specify VOLUMES for non-VSAM, non-SMS data sets. This is known as Indirect<br />

Volume Serial Support. With DFSMS/MVS 1.5, it is also possible to use system<br />

symbols in extended alias definitions for data set names. These can then be<br />

related to different real data set names on different systems. This can be useful<br />

when migrating from one software release to the next. The advantage of this<br />

function is that your JCL does not have to be modified with respect to the data set<br />

names that you wish to use. What you must consider is the system on which you<br />

run the job. Selecting the system on which you run the job can be accomplished<br />

by setting up job classes that run exclusively on selected systems.<br />

Figure 14 shows sample definitions for system symbols in our Sysplex:


SYSDEF SYSCLONE(&SYSNAME(3:2))<br />

SYMDEF(&SRES2='&SYSR1(1:5).2')<br />

SYMDEF(&SYSR2='&SYSR1(1:5).2')<br />

SYMDEF(&SYSR3='&SYSR1(1:5).3')<br />

SYMDEF(&ALLCLST1='CANCEL')<br />

SYMDEF(&CMDLIST1='&SYSCLONE.,00')<br />

SYMDEF(&LPALIST1='00')<br />

SYMDEF(&MLPALST1='OE')<br />

SYMDEF(&LELEVEL='R170')<br />

...<br />

(more global symbol definitions included)<br />

...<br />

SYSDEF HWNAME(SCZP601)<br />

LPARNAME(A8)<br />

SYSPARM(R3)<br />

SYSNAME(SC63)<br />

SYMDEF(&OMVSPARM='7A')<br />

SYSDEF HWNAME(SCZP601)<br />

LPARNAME(A9)<br />

SYSPARM(R3)<br />

SYSNAME(SC64)<br />

SYMDEF(&OMVSPARM='7A')<br />

SYSDEF HWNAME(SCZP101)<br />

LPARNAME(A3)<br />

SYSPARM(GR,R3)<br />

SYSNAME(SC65)<br />

SYMDEF(&OMVSPARM='5E')<br />

SYMDEF(&LELEVEL='R180')<br />

Figure 14. Sample Symbol Definitions Parmlib Member (IEASYMxx)<br />

For all the systems in our sysplex we set the global symbol &LELEVEL to ’R170’,<br />

<strong>and</strong> we used a local symbol definition to set a value of ’R180’ for system SC65. We<br />

use &LELEVEL in an extended alias definition for the data set name<br />

CEE.SCEELKED that will relate to different real data set names on different<br />

systems. Figure 15 shows our intention, with respect to the resolution of the alias<br />

name CEE.SCEELKED, to point to different real data set names on systems<br />

SC63, SC64 <strong>and</strong> SC65.<br />

Implementation 31


SC63<br />

CEE.SCEELKED<br />

32 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

SC64<br />

CEE.SCEELKED<br />

SB0X01 SB0X02<br />

CEE.R170.SCEELKED CEE.R180.SCEELKED<br />

Figure 15. Data Set Name Resolution for a Symbolic Alias on Different Systems<br />

At this stage we have not performed an IPL, so these system symbols will not<br />

take effect until an IPL has taken place on all systems.<br />

3.2.2 Defining an Extended Alias<br />

ThenextstepistousetheAMSDEFINE comm<strong>and</strong> to define an extended alias for<br />

CEE.SCEELKED. A new keyword, SYMBOLICRELATE, has been introduced to<br />

allow you to define an alias using a system symbol. If a period is to follow the<br />

system symbol, you must code two consecutive periods (..). There is no<br />

restriction defining the extended alias even though an IPL has not been carried<br />

out to activate the system symbol &LELEVEL. The job to define the extended<br />

alias can run on any system sharing the catalog in which the alias is defined.<br />

Figure 16 shows the job that we submitted:<br />

//DEFALIAS JOB (999,POK),'TATERS2',CLASS=A,REGION=4096K,<br />

// MSGCLASS=X,TIME=10,MSGLEVEL=(1,1),NOTIFY=&SYSUID<br />

//STEP1 EXEC PGM=IDCAMS<br />

//SYSPRINT DD SYSOUT=*<br />

//SYSIN DD *<br />

DEFINE ALIAS -<br />

(NAME(CEE.SCEELKED) -<br />

SYMBOLICRELATE(CEE.&LELEVEL..SCEELKED)) -<br />

CATALOG(MCAT.SANDBOX.VSBOX01)<br />

/*<br />

Figure 16. Defining an Extended Alias Using a System Symbol<br />

SC65<br />

CEE.SCEELKED


3.2.3 Referring to an Extended Alias<br />

As we stated earlier, an IPL is needed to set the system symbol used in an<br />

extended alias definition. Until that time, references to that alias will not be<br />

resolved. In our case, allocation requests to CEE.SCEELKED would have failed<br />

<strong>and</strong> a LISTCAT comm<strong>and</strong> issued for this entry would show the name of the system<br />

symbol in its associations group as shown in Figure 17:<br />

ALIAS --------- CEE.SCEELKED<br />

IN-CAT --- MCAT.SANDBOX.VSBOX01<br />

HISTORY<br />

RELEASE----------------2<br />

ASSOCIATIONS<br />

NONVSAM--CEE.&LELEVEL..SCEELKED<br />

Figure 17. Extended Alias Name Resolution without the System Symbol Set<br />

After the next IPL, the system symbols defined in IEASYMxx have been set, <strong>and</strong><br />

references to CEE.SCEELKED will result in &LELEVEL being resolved to its<br />

intended value in each respective system. In Figure 18, you can see the output of<br />

the LISTCAT comm<strong>and</strong> on system SC63, <strong>and</strong> you can see that resolution has taken<br />

place as we intended:<br />

ALIAS --------- CEE.SCEELKED<br />

IN-CAT --- MCAT.SANDBOX.VSBOX01<br />

HISTORY<br />

RELEASE----------------2<br />

ASSOCIATIONS<br />

NONVSAM--CEE.R170.SCEELKED<br />

Figure 18. Extended Alias Name Resolution with the System Symbol Set<br />

When used in JCL, the resolution of a symbolic alias is transparent to the<br />

end-user. As you can see from our sample JCL in Figure 19, which was run on<br />

systems SC63 <strong>and</strong> SC65, the alias name CEE.SCEELKED specified in the<br />

SYSLIB DD statement will also be used in the disposition message IEF285I. Itis<br />

only when the different target data sets reside on different volumes that you will<br />

see a difference from the device numbers in allocation message IEF237I <strong>and</strong> the<br />

volume serial numbers in message IEF285I.<br />

Note<br />

Because the system symbol is not resolved at the time of definition for a<br />

symbolic alias, there is no backward association from the related-to non-VSAM<br />

data set to its symbolic alias. As a consequence, symbolic aliases will not be<br />

deleted when deleting the non-VSAM data set to which they relate.<br />

Implementation 33


Figure 19. Using an Extended Alias in JCL<br />

3.2.4 Extended Alias Support for <strong>Catalog</strong>s<br />

34 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

...<br />

//LKED EXEC PGM=HEWL,COND=(8,LT,COBOL),REGION=1024K<br />

//SYSLIB DD DSNAME=CEE.SCEELKED,<br />

// DISP=SHR<br />

//SYSPRINT DD SYSOUT=*<br />

//SYSLIN DD DSNAME=&&LOADSET,DISP=(OLD,DELETE)<br />

// DD DDNAME=SYSIN<br />

//SYSLMOD DD DSNAME=&&GOSET(&GOPGM),SPACE=(TRK,(10,10,1)),<br />

// UNIT=SYSDA,DISP=(MOD,PASS)<br />

//SYSUT1 DD UNIT=SYSDA,SPACE=(TRK,(10,10))<br />

...<br />

...<br />

IEF236I ALLOC. FOR TATERS2I LKED RUNIVP<br />

IEF237I 0CC1 ALLOCATED TO SYSLIB<br />

IEF237I JES2 ALLOCATED TO SYSPRINT<br />

IEF237I 2518 ALLOCATED TO SYSLIN<br />

IEF237I DMY ALLOCATED TO<br />

IGD100I 2518 ALLOCATED TO DDNAME SYSLMOD DATACLAS ( )<br />

IGD100I 2518 ALLOCATED TO DDNAME SYSUT1 DATACLAS ( )<br />

IEF142I TATERS2I LKED IGYWCLG - STEP WAS EXECUTED - COND CODE 0000<br />

IEF285I CEE.SCEELKED KEPT<br />

IEF285I VOL SER NOS= SBOX01.<br />

IEF285I TATERS2.TATERS2I.JOB03676.D0000102.? SYSOUT<br />

...<br />

...<br />

IEF236I ALLOC. FOR TATERS2I LKED RUNIVP<br />

IEF237I 0CC2 ALLOCATED TO SYSLIB<br />

IEF237I JES2 ALLOCATED TO SYSPRINT<br />

IEF237I 2518 ALLOCATED TO SYSLIN<br />

IEF237I DMY ALLOCATED TO<br />

IGD100I 2518 ALLOCATED TO DDNAME SYSLMOD DATACLAS ( )<br />

IGD100I 2518 ALLOCATED TO DDNAME SYSUT1 DATACLAS ( )<br />

IEF142I TATERS2I LKED IGYWCLG - STEP WAS EXECUTED - COND CODE 0000<br />

IEF285I CEE.SCEELKED KEPT<br />

IEF285I VOL SER NOS= SBOX02.<br />

IEF285I TATERS2.TATERS2I.JOB03677.D0000102.? SYSOUT<br />

...<br />

Extended Alias Support for catalogs uses the same principles as those<br />

associated with data sets. However, in the case of a catalog, the resolution of the<br />

symbolic string is done at CAS initialization or when the multi-level alias table is<br />

refreshed. As stated before, particular care <strong>and</strong> testing should be employed when<br />

using Extended Alias Support for catalogs to avoid unpredictable results.


Chapter 4. Operations<br />

In this chapter we discuss the system definitions <strong>and</strong> comm<strong>and</strong>s that can be used<br />

to control the way in which the catalog address space operates. We also<br />

recommend some checks that you can implement to monitor the health of your<br />

ECS environment.<br />

In the following sections we describe:<br />

How to use the Modify comm<strong>and</strong><br />

Operational procedure suggestions<br />

4.1 Using the Modify <strong>Catalog</strong> Comm<strong>and</strong><br />

In this section, we discuss the definitions <strong>and</strong> parameters that the CAS will use<br />

during IPL or CAS restart to set its operational characteristics. These can be<br />

displayed or changed once the CAS is active by using the MODIFY CATALOG<br />

comm<strong>and</strong>. We will explain its parameters <strong>and</strong> their usage as it relates to the ECS<br />

environment <strong>and</strong> our test systems. Refer to Managing <strong>Catalog</strong>s, SC26-4914 for a<br />

complete description of CAS functions <strong>and</strong> OS/390 V2R7.0 MVS System<br />

Comm<strong>and</strong>s, GC28-1781 for a complete comm<strong>and</strong> reference. We have included<br />

the current MODIFY CATALOG comm<strong>and</strong> syntax in Appendix B, “What’s Changed <strong>and</strong><br />

What’s New” on page 101.<br />

4.1.1 Setting the Initial CAS Options <strong>and</strong> Parameters<br />

When CAS is first started as part of the IPL process, the following system<br />

definitions will determine its operational characteristics:<br />

The SYSCAT statement in PARMLIB member LOADxx or the SYSCATxx<br />

member in SYS1.NUCLEUS<br />

An (optional) CLASS statement for NAME(IGGCAS) in PARMLIB member<br />

COFVLFxx<br />

An (optional) structure with the name SYSIGGCAS_ECS in an active CFRM<br />

policy<br />

The SYSCAT statement in LOADxx identifies:<br />

The master catalog<br />

The volume the master catalog resides on<br />

The initial state of SYS% to SYS1 conversion<br />

The initial alias name level<br />

The initial service task lower limit<br />

The high level qualifier of the tape volume catalog<br />

Other limits <strong>and</strong> functions are set to their initial default values. For example, the<br />

maximum number of open catalogs is set to 200, the dynamic dump function is<br />

set off, <strong>and</strong> the DELETE UCAT/VVDS WARNING is set on.<br />

Using a CLASS statement for NAME(IGGCAS) in COFVLFxx allows you to<br />

specify the names of user catalogs that are eligible for the catalog data space<br />

cache (CDSC). Since the CDSC is maintained by the virtual lookaside facility<br />

© Copyright <strong>IBM</strong> Corp. 1999 35


36 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

(VLF), the CAS can start using it as soon as VLF has initialized. For a complete<br />

description of both the COFVLFxx <strong>and</strong> LOADxx parmlib members, see OS/390<br />

V2R7.0 MVS Initialization <strong>and</strong> Tuning Reference, SC28-1752.<br />

If there is a structure with the name SYSIGGCAS_ECS defined in an active CFRM<br />

policy, CAS will connect to it <strong>and</strong> use it for ECS. This is discussed in greater<br />

detail in Chapter 3.1, “Implementing <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong>” on page 23.<br />

4.1.2 Allocating <strong>Catalog</strong>s to the CAS<br />

During IPL, the first catalog request from the master address space causes the<br />

CAS to open the master catalog. Once the CAS is in full-function mode, CAS<br />

builds internal tables of user catalog names, their aliases <strong>and</strong> volume serial<br />

numbers from the entries in the master catalog. The CAS also attempts to<br />

connect to the ECS structure in an active CFRM policy.<br />

When a catalog function is requested for a data set whose high-level qualifier<br />

relates to a user catalog, that catalog will be opened by the CAS. Records read<br />

from a catalog can be kept in a cache that can be either an in-storage cache<br />

(ISC) within the CAS, or a catalog data space cache (CDSC) maintained by VLF.<br />

For a shared catalog that is eligible for ECS, its VVR is maintained in the ECS<br />

structure in the coupling facility.<br />

<strong>Catalog</strong>s will remain open to the CAS until either the maximum number of open<br />

catalogs (CATMAX) is reached, or a catalog is explicitly closed using the MODIFY<br />

CATALOG,CLOSE comm<strong>and</strong>.<br />

4.1.3 Controlling the CAS Environment<br />

You can use the MODIFY CATALOG comm<strong>and</strong> to:<br />

Obtain information about the current CAS environment including:<br />

The status of allocated catalogs<br />

The current setting of options <strong>and</strong> parameters<br />

The service level of specific catalog modules<br />

Make temporary changes to the CAS environment including:<br />

Closing or unallocating catalogs<br />

Changing the current setting of options <strong>and</strong> parameters<br />

Fix temporary catalog problems by:<br />

Rebuilding control blocks after closing or unallocating catalogs<br />

Terminating service tasks that will not complete<br />

Simplify system maintenance procedures by:<br />

Unallocating catalogs <strong>and</strong> VVDS’s to allow a volume recovery<br />

Restarting the CAS with a new service level in IGG0CLX0 only


Various parameters can be used to control the status of catalogs, VVDS’s,<br />

service tasks <strong>and</strong> other items in the CAS. Table 4 shows a summary of<br />

parameters for the MODIFY CATALOG comm<strong>and</strong> by resource type.<br />

Table 4. MODIFY CATALOG Parameters by Resource Type<br />

Resource Type Use to Display Use to Modify<br />

CAS modules REPORT<br />

ENTRY<br />

CAS options REPORT<br />

REPORT,DUMP<br />

CAS performance REPORT,CACHE<br />

REPORT,PERFORMANCE<br />

CAS service task LIST<br />

LISTJ(jobname)<br />

REPORT<br />

catalog BCS ALLOCATED<br />

ECSHR(STATUS,catname)<br />

REPORT,CACHE<br />

REPORT,CACHE<br />

RESTART<br />

ABEND(ALLOCATE|ANALYSIS|<br />

MODIFY)<br />

ALIASLEVEL(n)<br />

CATMAX(xx)<br />

DUMPON|DUMPOFF<br />

ROTATE|NOROTATE<br />

SYS%ON|SYS%OFF<br />

TASKMAX(xx)<br />

WARNING|NOWARNING<br />

ISC|NOISC, VLF|NOVLF<br />

ECSHR,<br />

CATMAX(xx), TASKMAX(xx) a<br />

ABEND(id|taskaddr)<br />

END(id)<br />

TASKMAX(xx)<br />

ALLOCATE<br />

CLOSE<br />

ECSHR(ENABLE|REMOVE)<br />

ISC|NOISC<br />

UNALLOCATE<br />

VLF|NOVLF<br />

ECS ECSHR(STATUS) ECSHR(AUTOADD|CONNECT|<br />

DISCONNECT|ENABLEALL)<br />

volume ALLOCATED(volser) UNALLOCATE<br />

VUNALLOCATE|NOVUNALLOCATE<br />

VVDS<br />

REPORT<br />

VCLOSE<br />

VUNALLOCATE|NOVUNALLOCATE<br />

a. These parameters all have an influence on CAS performance. However, they cannot be used<br />

to set catalog performance directly.<br />

4.1.4 Controlling the Status of <strong>Catalog</strong>s in the CAS<br />

To obtain a status summary of all catalogs currently allocated to the CAS, we<br />

recommend that you issue the MODIFY CATALOG,ALLOCATED comm<strong>and</strong>. It reflects the<br />

status of any catalog currently allocated to the CAS. If you want to restrict the<br />

status display to catalogs residing on a specific volume, you can specify that<br />

volume with the comm<strong>and</strong>. Figure 20 shows a sample response to a MODIFY<br />

CATALOG,ALLOCATED comm<strong>and</strong>, which provides information about:<br />

The allocation status of catalogs<br />

The caching status of catalogs<br />

The sharing status of catalogs<br />

Operations 37


Figure 20. Allocated <strong>Catalog</strong>s Status Display<br />

38 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

F CATALOG,ALLOCATED<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC348I ALLOCATED CATALOGS 219<br />

*CAS***************************************************************<br />

* FLAGS -VOLSER-USER-CATALOG NAME *<br />

* Y-I-R- SBOX09 0001 UCAT.VSBOX09 *<br />

* Y-I-E- SBOX01 0001 UCAT.VSBOX01 *<br />

* Y-I-R- IODFPK 0001 CATALOG.SHRICF1.VIODFPK *<br />

* Y-I-E- SBOX01 0001 MCAT.SANDBOX.VSBOX01 *<br />

*******************************************************************<br />

* Y/N-ALLOCATED TO CAS, S-SMS, V-VLF, I-ISC, C-CLOSED, D-DELETED, *<br />

* R-SHARED, A-ATL, E-ECS SHARED, K-LOCKED *<br />

*CAS***************************************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

The multi-line message IEC348I describes the meaning of the status flags after<br />

the last catalog is displayed.<br />

Controlling the Caching Status of <strong>Catalog</strong>s<br />

If the status flags for a catalog indicate that it is cached in ISC (--I---) or VLF<br />

(--V---), or that it uses ECS (----E-), you can obtain more detailed information by<br />

using the REPORT,CACHE or the ECSHR(STATUS) parameters of the MODIFY<br />

CATALOG comm<strong>and</strong>. If you are interested in information relating to a specific<br />

catalog, you can specify its name with the comm<strong>and</strong> to restrict the output to that<br />

catalog. Figure 21 shows a sample catalog cache report.<br />

F CATALOG,REPORT,CACHE<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC359I CATALOG CACHE REPORT 014<br />

*CAS******************************************************************<br />

* HIT% -RECORDS- -SEARCHES --FOUND-- -DELETES- -SHR UPD- --PURGE-- *<br />

* *<br />

* UCAT.VSBOX09 (ISC) *<br />

* 66% 8 24 16 0 0 1 *<br />

* UCAT.VSBOX01 (ISC) *<br />

* 55% 12 47 26 3 0 10 *<br />

* MCAT.SANDBOX.VSBOX01 (ISC) *<br />

* 70% 271 1,450 1,018 0 0 4 *<br />

* *<br />

*CAS******************************************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

Figure 21. <strong>Catalog</strong> Cache Statistics Report<br />

Two kinds of cache can be used to keep catalog records in the CAS or in a data<br />

space maintained by VLF. The in-storage catalog cache (ISC) is the default cache<br />

for all catalogs <strong>and</strong> should always be used for the master catalog. Alternatively,<br />

user catalog records can be cached in the catalog data space cache (CDSC)<br />

using VLF. See Managing <strong>Catalog</strong>s, SC26-4914 for a complete description of<br />

both caching methods.<br />

To limit the amount of storage used in CAS, or to overcome the fixed limit for each<br />

user catalog in the ISC, you may want to prevent a catalog from using the ISC


<strong>and</strong> start using the CDSC for it. To do this, you can use the ISC/NOISC <strong>and</strong> the<br />

VLF/NOVLF parameters of the MODIFY CATALOG comm<strong>and</strong>. However, you may have<br />

to update the CLASS definitions for NAME(IGGCAS) in PARMLIB member<br />

COFVLFxx <strong>and</strong> restart VLF before you can use the CDSC for a catalog.<br />

Controlling the <strong>Sharing</strong> Status of <strong>Catalog</strong>s<br />

From the flags in the allocated catalogs status display (Figure 20), it is possible to<br />

tell if a catalog is being shared using VVDS mode (R) orusingECS(E). If the flags<br />

do not show an ’R’ oran’E’ in the 5th position, the catalog is not shared, <strong>and</strong> also<br />

indicates that it does not reside on a shared volume, or is not defined with<br />

SHAREOPTIONS(3,4). For more information about catalog sharing problems,<br />

refer to 6.3, “<strong>Catalog</strong> <strong>Sharing</strong> Problems” on page 77.<br />

This display shows only the known sharing status on the issuing system. To<br />

determine whether a catalog is being shared correctly in a sysplex, you must<br />

verify that all systems show ’R’ or’E’.<br />

If the allocated catalogs status display shows that catalogs are not using ECS,<br />

although you have defined them as eligible for ECSHARING, we recommend that<br />

you issue the MODIFY CATALOG,ECSHR(STATUS) comm<strong>and</strong> to determine why ECS is<br />

not being used for those catalogs. The message IEC380I that is issued in<br />

response shows information only for catalogs that are open to the CAS on this<br />

system. ECS can be used for other catalogs on other systems in the sysplex.<br />

Refer to Figure 22 for a sample ECS status display, which shows various reasons<br />

for ECS not being used:<br />

Inact(NotElig) for two user catalogs, UCAT.VSBOX09 <strong>and</strong><br />

CATALOG.SHRICF.VIODFPK, which have not been defined for ECSHARING.<br />

Inact(NonECSAcc) for a user catalog, UCAT.VSTEST1, which is temporarily<br />

ineligible for ECS, because it has been accessed by a non-ECS system (using<br />

VVDS mode sharing) or explicitly been removed from the ECS structure.<br />

Inact(CFFail) for the master catalog, MCAT.SANDBOX.VSBOX01, <strong>and</strong> a user<br />

catalog, UCAT.VSBOX01, which are not using ECS because of a connection<br />

failure to the ECS structure in the coupling facility.<br />

As you can see from the CF Connection: Connected status in Figure 22, the<br />

connection failure to the Coupling Facility has occurred on another system in the<br />

sysplex. In this example, the connection failure caused the AUTOADD function to<br />

quiesce on the systems that are still connected. In this case, you will have to use<br />

the ECSHR(AUTOADD) parameter of the MODIFY CATALOG comm<strong>and</strong> to reactivate<br />

the AUTOADD function. Also, you may have to re-enable catalogs that have been<br />

marked temporarily ineligible by using the ECSHR(ENABLE) or<br />

ECSHR(ENABLEALL) parameters.<br />

For a complete description of the Coupling Facility connection <strong>and</strong> catalog ECS<br />

status values, see OS/390 V2R7.0 MVS System Messages, Vol 4 (IEC-IFD),<br />

GC28-1787. The current status descriptions are also included in Appendix B.2,<br />

“New <strong>and</strong> Changed Messages” on page 108.<br />

Operations 39


40 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

F CATALOG,ECSHR(STATUS)<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC380I ENHANCED CATALOG SHARING 410<br />

*CAS***************************************************************<br />

* CF Connection: Connected *<br />

* ------------------CATALOG------------------- -----STATUS------ *<br />

* UCAT.VSTEST1 Inact(NonECSAcc) *<br />

* UCAT.VSBOX09 Inact(NotElig) *<br />

* UCAT.VSBOX01 Inact(CFFail) *<br />

* CATALOG.SHRICF1.VIODFPK Inact(NotElig) *<br />

* MCAT.SANDBOX.VSBOX01 Inact(CFFail) *<br />

*CAS***************************************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

Figure 22. ECS Status Display With <strong>Catalog</strong>s Not Using ECS<br />

If you want a catalog to use ECS that has not been defined for ECSHARING, you<br />

can change the attribute for that catalog using the AMS ALTER comm<strong>and</strong>. Refer to<br />

3.1.5, “Setting the ECSHR Attribute for Selected <strong>Catalog</strong>s” on page 28 for more<br />

details. As long as the ECS requirements are met, <strong>and</strong> if the AUTOADD function<br />

is enabled, the catalog will start using ECS on the next reference to that catalog.<br />

In the same way, the sharing mode for a catalog will revert from ECS to VVDS<br />

sharing, if its attribute is changed back to NOECSHR by the AMS ALTER<br />

comm<strong>and</strong>.<br />

Changing other attributes for a catalog, however, does not have an immediate<br />

effect. For example, if you change the SHAREOPTIONS for a catalog to indicate<br />

that it can now be shared amongst systems, you will have to close the catalog in<br />

the CAS using the CLOSE parameter of the MODIFY CATALOG comm<strong>and</strong>. The CAS<br />

will then open it again on the next reference to the catalog, <strong>and</strong> honor its changed<br />

attributes.<br />

When a catalog is closed, all associated private storage will be freed in the CAS,<br />

<strong>and</strong> allocated cache space will be released. Also, if the catalog was using VLF for<br />

caching, the space used for it in the CDSC will become available for use by other<br />

catalogs.<br />

Likewise, the VCLOSE parameter of the MODIFY CATALOG comm<strong>and</strong> is used to<br />

close the VVDS on a specific volume. The private storage used in CAS for the<br />

VVDS will be freed. The VVDS will be reopened on the next catalog request that<br />

needs information for data sets on this volume.<br />

Controlling the Allocation Status of <strong>Catalog</strong>s<br />

To get a catalog unallocated from CAS, you can use the MODIFY CATALOG comm<strong>and</strong><br />

with the UNALLOCATE parameter. This might become necessary when you want<br />

to vary the device offline on which the catalog resides.<br />

To have CAS unallocate a VVDS, you can use the VUNALLOCATE parameter of<br />

the MODIFY CATALOG comm<strong>and</strong>. The default setting for VUNALLOCATE is on, which<br />

indicates that a VVDS is to be unallocated on completion of a request. However,<br />

it may have been turned off using the NOVUNALLOCATE parameter, which can<br />

improve performance by eliminating repeated dynamic allocation <strong>and</strong><br />

unallocation requests for the VVDS’s.


4.1.5 Controlling Options <strong>and</strong> Settings in the CAS<br />

To review the current settings of the CAS options <strong>and</strong> parameters, issue the<br />

MODIFY CATALOG,REPORT comm<strong>and</strong>. Figure 23 shows the sample output from this<br />

comm<strong>and</strong>. Note that all numerical data, including the numbers <strong>and</strong> limits of<br />

service tasks <strong>and</strong> open catalogs, is displayed in hexadecimal. Additional<br />

information, such as the catalog component level (FMID), the address space<br />

number of the CAS, <strong>and</strong> its TCB addresses, will be helpful for diagnostic<br />

purposes.<br />

F CATALOG,REPORT<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC359I CATALOG REPORT OUTPUT 232<br />

*CAS**************************************<br />

* CATALOG COMPONENT LEVEL = HDZ11E0 *<br />

* CATALOG ADDRESS SPACE ASN = 002A *<br />

* SERVICE TASK UPPER LIMIT = 000000B4 *<br />

* HIGHEST # SERVICE TASKS = 0006 *<br />

* CURRENT # SERVICE TASKS = 0006 *<br />

* MAXIMUM # OPEN CATALOGS = 000000C8 *<br />

* ALIAS TABLE AVAILABLE = YES *<br />

* ALIAS LEVELS SPECIFIED = 1 *<br />

* CRT TABLE SLOT ROTATION = OFF *<br />

* SYS% TO SYS1 CONVERSION = OFF *<br />

* CAS MOTHER TASK = 00896A70 *<br />

* CAS MODIFY TASK = 008968D8 *<br />

* CAS ANALYSIS TASK = 00896178 *<br />

* CAS ALLOCATION TASK = 008963A8 *<br />

* VOLCAT HI-LEVEL QUALIFIER = SYS1 *<br />

* VUNALLOCATE = ON *<br />

* DELETE UCAT/VVDS WARNING = ON *<br />

*CAS**************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

Figure 23. Sample <strong>Catalog</strong> Report Output<br />

Modifying Current CAS Options<br />

You can set the maximum number of open catalogs <strong>and</strong> the service task upper<br />

limit using the CATMAX <strong>and</strong> TASKMAX parameters of the MODIFY CATALOG<br />

comm<strong>and</strong>. These settings will have an effect on catalog performance. Refer to<br />

“Monitoring the Performance Parameters for CAS” on page 47, for more<br />

information on catalog performance indicators.<br />

If you plan to change the search level for the multi-level alias facility, you can use<br />

the MODIFY CATALOG comm<strong>and</strong> with the ALIASLEVEL parameter to temporarily set<br />

the search level for testing purposes. When you have tested an alias level<br />

successfully, you should set the initial alias search level in the SYSCAT<br />

statement in parmlib member LOADxx or the SYSCATxx member in<br />

SYS1.NUCLEUS.<br />

The current setting of the DELETE comm<strong>and</strong> using the UCAT/VVDS WARNING<br />

option determines if WTOR messages IDC1997I or IDC1998I should be issued<br />

when an AMS DELETE USERCATALOG FORCE comm<strong>and</strong> or a DELETE RECOVERY for a<br />

VVDS is about to be executed. These messages have to be replied to with ’Y’ to<br />

confirm the deletion of the catalog or VVDS. If you do not want the CAS to issue<br />

these messages, you can use the NOWARNING parameter of the MODIFY CATALOG<br />

comm<strong>and</strong> to turn off this option.<br />

Operations 41


42 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

Determining the Current Dynamic Dump Status<br />

To check the dynamic dump status of the CAS, you can use the REPORT,DUMP<br />

parameter of the MODIFY CATALOG comm<strong>and</strong>. Figure 24 shows a sample dump<br />

report output. Initially, the dynamic dump status will be OFF, but you may be<br />

asked by support personnel of the <strong>IBM</strong> Support Center to turn it ON for diagnostic<br />

purposes. This can be done by using the DUMPON parameter of the MODIFY<br />

CATALOG comm<strong>and</strong>, <strong>and</strong> optionally, specifying catalog return <strong>and</strong> reason codes <strong>and</strong><br />

a module ID for which dumps are to be taken.<br />

F CATALOG,REPORT,DUMP<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC359I CATALOG REPORT DUMP OUTPUT 021<br />

*CAS***************************************************************<br />

* STATUS RETURN CODE REASON CODE MODULE ID COUNT *<br />

* ON 194 008 ** 001 *<br />

*CAS***************************************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

Figure 24. Sample <strong>Catalog</strong> Dynamic Dump Report<br />

Determining the Service Level of <strong>Catalog</strong> Modules<br />

To determine the starting address <strong>and</strong> the service level of the catalog modules<br />

currently in use, issue the MODIFY CATALOG comm<strong>and</strong> with the ENTRY parameter<br />

<strong>and</strong>, optionally, a module name. See Figure 25 for the sample comm<strong>and</strong> <strong>and</strong> its<br />

related output. This kind of information can be helpful for diagnostic purposes.<br />

F CATALOG,ENTRY(IGG0CLSH)<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC349I DISPLAY ENTRY POINT(S) 089<br />

*CAS****************************************<br />

* NAME - ADDRESS - FMID/LEVEL *<br />

* IGG0CLSH 00008948 HDZ11E0/OW39071 *<br />

*CAS****************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

Figure 25. Sample <strong>Catalog</strong> Module Entry Display<br />

In the example above, the service level of module IGG0CLSH is OW39071. If the<br />

entry name IGG0CLSH is omitted, all CAS modules <strong>and</strong> their service levels are<br />

displayed.<br />

Obtaining CAS Performance Statistics<br />

To obtain performance statistics about the frequency <strong>and</strong> timings for system<br />

functions requested by CAS, you can issue the MODIFY CATALOG comm<strong>and</strong> with the<br />

REPORT,PERFORMANCE parameter. Figure 26 shows a sample catalog<br />

performance report. This information can be helpful when you need to identify<br />

performance problems. If you want to monitor the system events for a specific<br />

time period, you can reset the statistic values using the RESET subparameter.<br />

The types of events that you will want to look at depend on the type of<br />

performance problem that you experience on your systems. As far as ECS is<br />

concerned, you will notice differences in the numbers of VVDS RESERVEs,<br />

VVDS DEQs <strong>and</strong> VVDS I/Os, compared to VVDS mode sharing. Refer to 4.2.4,<br />

“Performance Statistics” on page 47 for more details.


F CATALOG,REPORT,PERFORMANCE<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC359I CATALOG PERFORMANCE REPORT 398<br />

*CAS***************************************************<br />

* -----CATALOG EVENT---- --COUNT-- ---AVERAGE--- *<br />

* Entries to <strong>Catalog</strong> 50,420 9.651 MSEC *<br />

* BCS ENQ Shr Sys 50,567 0.613 MSEC *<br />

* BCS ENQ Excl Sys 33 0.472 MSEC *<br />

* BCS DEQ 99,904 0.452 MSEC *<br />

* VVDS RESERVE CI 45 0.396 MSEC *<br />

* VVDS DEQ CI 43 0.218 MSEC *<br />

* VVDS RESERVE Shr 12,641 1.140 MSEC *<br />

* VVDS RESERVE Excl 1,142 5.637 MSEC *<br />

* VVDS DEQ 13,619 0.506 MSEC *<br />

* SPHERE ENQ Excl Sys 6 0.485 MSEC *<br />

* SPHERE DEQ 6 0.263 MSEC *<br />

* CAXWA ENQ Shr 3 0.013 MSEC *<br />

* CAXWA DEQ 3 0.011 MSEC *<br />

* VDSPM ENQ 50,610 0.974 MSEC *<br />

* VDSPM DEQ 50,610 0.112 MSEC *<br />

* RPL ENQ 7,108 0.455 MSEC *<br />

* RPL DEQ 7,108 0.119 MSEC *<br />

* BCS Get 55,117 1.346 MSEC *<br />

* BCS Put 4 2.067 MSEC *<br />

* BCS Erase 1 1.575 MSEC *<br />

* VVDS I/O 11,565 2.877 MSEC *<br />

* VLF Define Major 3 0.045 MSEC *<br />

* VLF Identify 10,207 0.000 MSEC *<br />

* RMM Exit 1 0.002 MSEC *<br />

* Tape Exit 1 0.001 MSEC *<br />

* BCS Allocate 4 0.382 MSEC *<br />

* SMF Write 18 0.089 MSEC *<br />

* ENQ SYSZCATS Shr 4 0.381 MSEC *<br />

* DEQ SYSZCATS 2 0.134 MSEC *<br />

* IXLCONN 2 1.510 SEC *<br />

* IXLCACHE Read 33,220 0.208 MSEC *<br />

* IXLCACHE Write 13 0.172 MSEC *<br />

* IXLVECTR 57,461 0.009 MSEC *<br />

* Resolve Symbolic 24 0.570 MSEC *<br />

* MVS Allocate 4 255.055 MSEC *<br />

* ENQ SYSZCATS LCB 2 0.366 MSEC *<br />

* DEQ SYSZCATS LCB 2 0.214 MSEC *<br />

* Lookup/Pin UCB 4 0.032 MSEC *<br />

* Unpin UCB 4 0.014 MSEC *<br />

* Capture UCB 5 0.021 MSEC *<br />

* Uncapture UCB 1,148 0.030 MSEC *<br />

* RACROUTE Auth 49,455 0.660 MSEC *<br />

* RACROUTE Define 4 0.446 MSEC *<br />

*CAS***************************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

Figure 26. Sample <strong>Catalog</strong> Performance Report<br />

Operations 43


4.1.6 Controlling the Status of Service Tasks in CAS<br />

44 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

To obtain a summary display of currently active service tasks in the CAS, use the<br />

LIST or the LISTJ parameter of the MODIFY CATALOG comm<strong>and</strong>. Figure 27 shows a<br />

sample service tasks display output which includes the job <strong>and</strong> step names of the<br />

requestor <strong>and</strong> the associated service task ID. This task ID can be used to end a<br />

request that does not complete, for example in case of an enqueue lockout. You<br />

can use the MODIFY CATALOG comm<strong>and</strong> with the END parameter to end a catalog<br />

request. If the service task still does not end, you can attempt to end the request<br />

abnormally by using the ABEND parameter <strong>and</strong> either the service task ID or the<br />

TASK ADDRESS specified.<br />

F CATALOG,LIST<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC347I LIST CATALOG TASK(S) 561<br />

*CAS****************************************************************<br />

* FLAGS - TASK ADDRESS - JOBNAME / STEPNAME - ELAPSED TIME - ID *<br />

* -W--R- 00891B40 TATERS2L / STEP1 00.00.01 01 *<br />

* -W--R- 00893E88 TATERS2K / STEP1 00.00.01 02 *<br />

* -W-E-- 00893470 TATERS2N / STEP1 00.00.01 05 *<br />

* WAITING FOR VVDS I/O FROM 000597AA FOR 00.00.01 *<br />

********************************************************************<br />

* O-OLDEST, W-WAIT, A-ABEND, E-ENQ, R-RECALL, L-RLS *<br />

*CAS****************************************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

Figure 27. Sample <strong>Catalog</strong> Service Tasks Display<br />

If you need more detailed information about the status of a service task, use<br />

LISTJ with the DETAIL parameter. Figure 28 shows the sample output from this<br />

comm<strong>and</strong>. This information can be helpful in determining why a request will not<br />

complete.<br />

F CATALOG,LISTJ(TATERS2L),DETAIL<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC347I LIST CATALOG TASK(S) 992<br />

*CAS******************************************************************<br />

* JOB/STEP Name: TATERS2L/STEP1 ASN: 001E TCB: 008E12D0 *<br />

* CAS TCB: 00891B40 Task Number: 01 TCB Comp Code: 00000000 *<br />

* CCX: 08290000 CCA: 7F754000 CCAPROB: 00000000 *<br />

* CTGPL: 04118102 7F5E4CDC 7F5E4CD8 7F5E4E30 *<br />

* 2100FF07 00000000 00000000 *<br />

* Request Type: Listcat *<br />

* CTGENT: SYS1.V2R5M0.SIATLIB *<br />

* CCASRCH: SYS1.V2R5M0.SIATLIB *<br />

* Oriented to: MCAT.SANDBOX.VSBOX01 *<br />

* Waiting for: VVDS I/O at 000596A2 for 00.00.01 *<br />

* VDSPM ENQ: EXCL *<br />

* MCAT.SANDBOX.VSBOX01 *<br />

*CAS******************************************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

Figure 28. Sample <strong>Catalog</strong> Task Detail Display<br />

4.1.7 Controlling <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> in CAS<br />

We have already discussed using the ECSHR(STATUS) parameter of the MODIFY<br />

CATALOG comm<strong>and</strong> to determine the status of enhanced catalog sharing in


“Connecting to the CF Structure” on page 26, “Issuing the Automatic Add<br />

Comm<strong>and</strong>” on page 29, <strong>and</strong> “Controlling the Status of <strong>Catalog</strong>s in the CAS” on<br />

page 37. We have seen that the CAS will use ECS if it can connect to the ECS<br />

structure in the Coupling Facility, <strong>and</strong> the automatic add function is enabled.<br />

Under normal conditions, no further operator intervention is required to maintain<br />

ECS. In some special situations, however, you may need to use the following<br />

subparameters of ECSHR:<br />

DISCONNECT will disconnect the current system from the ECS structure in<br />

the Coupling Facility. All open catalogs will revert their sharing protocol from<br />

ECS to VVDS mode, <strong>and</strong> the automatic add function will be disabled. This will<br />

become necessary when you want to change the size of the ECS structure in<br />

the CFRM policy, or when service has to be applied to the Coupling Facility.<br />

CONNECT will connect the current system to the ECS structure in the<br />

Coupling Facility. Normally, the CAS will automatically connect to the Coupling<br />

Facility as soon as a CFRM policy with an ECS structure is activated. You<br />

might want to use the CONNECT subparameter if CAS does not connect<br />

automatically, <strong>and</strong> you want to determine the reason for the non-connectivity<br />

from the resultant output.<br />

AUTOADD will cause ECS-eligible catalogs to be added to the ECS structure<br />

in the Coupling Facility on the next reference to the catalog. You will need this<br />

subparameter to re-enable automatic add function after losing the ECS<br />

structure by a sysplex-wide IPL, a sysplex-wide CAS restart, a Coupling<br />

Facility connection failure, or after an explicit DISCONNECT request has been<br />

issued.<br />

ENABLEALL will enable all currently open catalogs for ECS that have been<br />

marked temporarily ineligible. You may want to use the ENABLEALL<br />

subparameter when catalogs have been explicitly REMOVEd from the ECS<br />

structure, or have been accessed by another system using VVDS mode<br />

sharing.<br />

4.1.8 Restarting CAS<br />

To activate maintenance that has been applied to the catalog load module<br />

IGG0CLX0 only, you must restart CAS by issuing the MODIFY CATALOG comm<strong>and</strong><br />

with the RESTART parameter. Be sure to have LLA refreshed before restarting<br />

the CAS. Service applied to modules other than those in IGG0CLX0 will affect the<br />

MVS link pack area (LPA). In this case, you must update LPA by either performing<br />

an IPL with the CLPA option, or use the MLPA function. Take care that you do not<br />

have different levels of service active in the IGG0CLX0 load module <strong>and</strong> in LPA.<br />

You may want to restart the CAS in other rare circumstances, such as when<br />

problems cannot be resolved by terminating service tasks, or closing or<br />

unallocating catalogs. You should, however, always try to solve a problem on a<br />

task or catalog basis first. Refer to “CAS Hang or Lockout Situations” on page 79,<br />

for a discussion of how to attempt resolution of problems in the CAS <strong>and</strong> the<br />

diagnostic information that you should gather before you attempt resolution.<br />

4.1.9 Sysplex Considerations<br />

Most of the parameters for the MODIFY CATALOG comm<strong>and</strong> affect only the CAS of<br />

the system on which the comm<strong>and</strong> is issued. With ECS, comm<strong>and</strong>s that affect the<br />

Operations 45


4.2 Operational Procedures<br />

46 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

ECS structure in the coupling facility will have a sysplex-wide scope. The ECSHR<br />

subparameters that will have an effect on other systems are:<br />

AUTOADD will enable the automatic add function for all systems connected to<br />

the ECS structure in the Coupling Facility.<br />

ENABLE | ENABLEALL will re-enable a specific catalog or all catalogs open to<br />

the CAS for ECS on all systems connected to the ECS structure in the<br />

Coupling Facility. Note that this may also re-enable catalogs for ECS that have<br />

been explicitly REMOVEd from another system.<br />

REMOVE will remove the specified catalog from the ECS structure in the<br />

Coupling Facility <strong>and</strong> revert its sharing protocol from ECS to VVDS mode on<br />

all connected systems.<br />

DISCONNECT will disable the automatic add function for all other systems<br />

connected to the ECS structure, <strong>and</strong> revert the sharing protocol for all<br />

catalogs open to the CAS from ECS to VVDS mode sharing.<br />

In this section we discuss some operational procedures that you may want to<br />

install in order to maintain your catalogs’ integrity <strong>and</strong> your CAS’ performance.<br />

4.2.1 Monitoring the <strong>Sharing</strong> Status for <strong>Catalog</strong>s<br />

You may want to install automated procedures to check regularly that catalogs<br />

which should be shared are actually being shared. The conditions for sharing<br />

may be lost, for example, by inadvertently altering the sharing attributes of a<br />

catalog, or by changing the definition for the device on which a catalog resides.<br />

This would result in an integrity exposure that might not be detected for a long<br />

period of time.<br />

To monitor the sharing status of catalogs, we recommend that you issue the<br />

MODIFY CATALOG,ALLOCATED comm<strong>and</strong> from an automated procedure. The procedure<br />

could then parse the text from the responding message IEC348I (see Figure 20 on<br />

page 38), <strong>and</strong> check the 5th position of the flags for an ’R’ (VVDS mode sharing)<br />

or an ’E’ (ECS).<br />

4.2.2 Monitoring the CF Connection Status for ECS<br />

You might also consider checking the Coupling Facility connection status for ECS<br />

at regular intervals. Although catalog integrity will be maintained when their<br />

sharing protocol is reverted from ECS to VVDS mode, performance will be<br />

degraded.<br />

We recommend using the MODIFY CATALOG,ECSHR(STATUS) from an automated<br />

procedure to monitor the status of the Coupling Facility connection. The third line<br />

of the responding message IEC380I (see Figure 22 on page 40) can be parsed to<br />

determine the connection status. The ECS status for all open catalogs will be<br />

displayed in the subsequent lines of this multi-line message.<br />

Additionally, you may want to include messages IEC377I, IEC378I <strong>and</strong> IEC381I in a<br />

NetView automation table. These messages report updates for the Coupling<br />

Facility connection status, the ECS status for a single catalog, or a connection<br />

failure to the Coupling Facility on another system.


4.2.3 Monitoring the Performance Parameters for CAS<br />

As we have mentioned before in “Controlling Options <strong>and</strong> Settings in the CAS” on<br />

page 41, you can issue the MODIFY CATALOG comm<strong>and</strong> with the<br />

REPORT,PERFORMANCE parameter to obtain a list of statistics for system<br />

functions requested by the CAS. In most cases, you will only want to take a closer<br />

look at these statistics when you suspect a performance problem with your CAS.<br />

As these performance statistics are very much dependent on the type of workload<br />

in your environment, there are no general guidelines as to what the figures should<br />

look like. You might consider obtaining the performance statistics for your<br />

environment on a regular basis, <strong>and</strong> then reset them to zero using the RESET<br />

subparameter. This enables you to compare your current values with those of the<br />

previous time period <strong>and</strong> detect potential performance problems if some of the<br />

figures differ significantly.<br />

In addition to the checks mentioned earlier in this section, you may consider<br />

checking the following settings that have an influence on CAS performance:<br />

ISC|NOISC, VLF|NOVLF. The response to a MODIFY CATALOG,ALLOCATED<br />

comm<strong>and</strong> (see Figure 20 on page 38) will display in the third position of the<br />

flags field, to show how (’I’ for ISC <strong>and</strong> ’V’ for VLF) a catalog is cached.<br />

VUNALLOCATE|NOVUNALLOCATE. The response to a MODIFY CATALOG,REPORT<br />

comm<strong>and</strong> (see Figure 23 on page 41) will tell you whether dynamically<br />

allocated VVDSs will be unallocated on completion of a request. Performance<br />

can be improved by specifying NOVUNALLOCATE which eliminates repeated<br />

dynamic allocations of a VVDS.<br />

CATMAX. The response to a MODIFY CATALOG,REPORT comm<strong>and</strong> will also tell you<br />

(in hexadecimal) the current maximum number of open catalogs. When this<br />

limit is reached, the least recently used catalog is closed. It will be opened<br />

again on the next request for this catalog. The results of the MODIFY<br />

CATALOG,ALLOCATED, discussed in “Controlling the Status of <strong>Catalog</strong>s in the<br />

CAS” on page 37, displays all allocated catalogs. The CATMAX value should<br />

be set larger than this number for the best performance. Setting CATMAX too<br />

low can cause serious performance problems.<br />

TASKMAX. The current maximum number of CAS service tasks will also be<br />

displayed (in hexadecimal) in the response to a MODIFY CATALOG,REPORT<br />

comm<strong>and</strong>. Once this limit is reached, additional requests to the CAS will be<br />

delayed until an active request is completed.<br />

Note that most of these settings that could improve performance, could also<br />

increase the amount of storage needed in the CAS for related control blocks. If<br />

you experience storage shortages in your CAS (indicated by system 878<br />

abends), you will have to balance the benefits gained from higher limits against<br />

the drawbacks of increased storage requirements.<br />

4.2.4 Performance Statistics<br />

Although it was not within our scope to present real-world performance figures<br />

here, due to the workload on the system, we will show some figures gathered by<br />

the F CATALOG,REPORT,PERFORMANCE comm<strong>and</strong>. These figures will show the<br />

difference between ECS <strong>and</strong> VVDS sharing <strong>and</strong> the benefits that we were able to<br />

gain.<br />

Operations 47


48 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

Even though this information was gathered in a test environment <strong>and</strong> not a<br />

production environment, the statistics provided by the catalog performance report<br />

can be used to show differences between ECS <strong>and</strong> VVDS sharing mode.<br />

LISTCAT<br />

With the first test, the ECS is active <strong>and</strong> the master catalog in ECS mode, we<br />

issued the:<br />

F CATALOG,REPORT,PERFORMANCE(RESET)<br />

comm<strong>and</strong> to reset all performance reporting information to zero.<br />

Next, we submitted an AMS LISTCAT ALL job against our shared master catalog<br />

which contained a total of 4,554 entries. The total elapsed time for that AMS<br />

LISTCAT job was 18 seconds. A performance report was taken after the AMS<br />

LISTCAT job by the comm<strong>and</strong>:<br />

F CATALOG,REPORT,PERFORMANCE<br />

This report is shown in Figure 29.<br />

F CATALOG,REPORT,PERFORMANCE<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC359I CATALOG PERFORMANCE REPORT 055<br />

*CAS***************************************************<br />

* -----CATALOG EVENT---- --COUNT-- ---AVERAGE--- *<br />

* Entries to <strong>Catalog</strong> 4,566 3.238 MSEC *<br />

* BCS ENQ Shr Sys 4,566 0.480 MSEC *<br />

* BCS DEQ 9,131 0.227 MSEC *<br />

* VVDS RESERVE Shr 344 0.461 MSEC *<br />

* VVDS RESERVE Excl 102 0.468 MSEC *<br />

* VVDS DEQ 446 0.282 MSEC *<br />

* VDSPM ENQ 4,566 0.021 MSEC *<br />

* VDSPM DEQ 4,566 0.016 MSEC *<br />

* BCS Get 4,794 0.123 MSEC *<br />

* VVDS I/O 242 1.939 MSEC *<br />

* IXLVECTR 9,134 0.006 MSEC *<br />

* Resolve Symbolic 3 0.293 MSEC *<br />

* Uncapture UCB 102 0.022 MSEC *<br />

* RACROUTE Auth 4,577 0.366 MSEC *<br />

*CAS***************************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

Figure 29. Performance Report after LISTCAT in ECS Mode<br />

We then submitted the same AMS LISTCAT ALL job but in VVDS sharing mode.<br />

Figure 30 shows the performance report taken after the AMS LISTCAT job in<br />

VVDS sharing mode. The total elapsed time for the AMS LISCAT job in VVDS<br />

sharing mode was 30 seconds. The statistics that show the tremendous<br />

performance improvements are shown in bold.


F CATALOG,REPORT,PERFORMANCE<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC359I CATALOG PERFORMANCE REPORT 092<br />

*CAS***************************************************<br />

* -----CATALOG EVENT---- --COUNT-- ---AVERAGE--- *<br />

* Entries to <strong>Catalog</strong> 4,566 6.023 MSEC *<br />

* BCS ENQ Shr Sys 4,566 0.486 MSEC *<br />

* BCS DEQ 9,131 0.249 MSEC *<br />

* VVDS RESERVE Shr 4,910 0.451 MSEC *<br />

* VVDS RESERVE Excl 102 0.500 MSEC *<br />

* VVDS DEQ 5,012 0.239 MSEC *<br />

* VDSPM ENQ 4,566 0.022 MSEC *<br />

* VDSPM DEQ 4,566 0.021 MSEC *<br />

* BCS Get 4,794 0.100 MSEC *<br />

* VVDS I/O 4,808 1.906 MSEC *<br />

* IXLVECTR 4,568 0.007 MSEC *<br />

* Resolve Symbolic 3 0.236 MSEC *<br />

* Uncapture UCB 102 0.021 MSEC *<br />

* RACROUTE Auth 4,577 0.386 MSEC *<br />

*CAS***************************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

Figure 30. Performance Report after LISTCAT in VVDS <strong>Sharing</strong> Mode<br />

Comparison of these reports shows significant reductions in:<br />

The job elapsed time reduced from 30 seconds to 18 seconds.<br />

The average time to process an entry from catalog reduced from 6.023 MSEC<br />

in VVDS sharing mode to 3.238 MSEC in ECS mode.<br />

The number of VVDS RESERVE Shr dropped from 4,910 in VVDS sharing<br />

mode to 344 in ECS mode.<br />

The number of VVDS I/Os dropped from 4,808 in VVDS sharing mode to 242<br />

in ECS mode.<br />

ALLOCATE<br />

We then decided to use <strong>IBM</strong> utility IEFBR14 to allocate 300 non-VSAM, non-SMS<br />

managed data sets. Using an alias, all data sets were cataloged into the user<br />

catalog UCAT.VSBOX01. Both the master catalog <strong>and</strong> the user catalog were in<br />

ECS mode. We issued the comm<strong>and</strong>:<br />

F CATALOG,REPORT,PERFORMANCE(RESET)<br />

This resets all performance reporting information to zero.<br />

Then we submitted an IEFBR14 job containing 300 DD statements, all with<br />

DISP=(NEW,CATLG), to create <strong>and</strong> catalog 300 non-SMS managed data sets.<br />

The elapsed time for this job was 12 seconds.<br />

After the job successfully ended, we again issued the comm<strong>and</strong>:<br />

F CATALOG,REPORT,PERFORMANCE<br />

The output is shown in Figure 31.<br />

Operations 49


50 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

Next, we changed the master catalog, as well as the user catalog from ECS to<br />

VVDS sharing mode <strong>and</strong>, again, allocated 300 non-VSAM, non-SMS managed<br />

data sets after the performance reporting statistics were reset to zero again. The<br />

elapsed time for this IEFBR14 job was 18 seconds. Figure 32 on page 51 shows<br />

the performance report that was taken after the job had run.<br />

F CATALOG,REPORT,PERFORMANCE<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC359I CATALOG PERFORMANCE REPORT 492<br />

*CAS***************************************************<br />

* -----CATALOG EVENT---- --COUNT-- ---AVERAGE--- *<br />

* Entries to <strong>Catalog</strong> 600 6.316 MSEC *<br />

* BCS ENQ Shr Sys 1,199 0.519 MSEC *<br />

* BCS ENQ Excl Sys 301 0.447 MSEC *<br />

* BCS DEQ 1,500 0.247 MSEC *<br />

* SPHERE ENQ Excl Sys 300 0.470 MSEC *<br />

* SPHERE DEQ 300 0.340 MSEC *<br />

* VDSPM ENQ 2,100 0.022 MSEC *<br />

* VDSPM DEQ 2,100 0.022 MSEC *<br />

* BCS Get 601 0.045 MSEC *<br />

* BCS Put 300 2.929 MSEC *<br />

* SMF Write 300 0.178 MSEC *<br />

* IXLCACHE Write 600 0.227 MSEC *<br />

* IXLVECTR 3,602 0.006 MSEC *<br />

* Lookup/Pin UCB 300 0.040 MSEC *<br />

* Unpin UCB 300 0.017 MSEC *<br />

* RACROUTE Auth 600 0.523 MSEC *<br />

* RACROUTE Define 300 0.594 MSEC *<br />

*CAS***************************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

Figure 31. Performance Report after Allocating 300 Data Sets ECS Active


F CATALOG,REPORT,PERFORMANCE<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC359I CATALOG PERFORMANCE REPORT 531<br />

*CAS***************************************************<br />

* -----CATALOG EVENT---- --COUNT-- ---AVERAGE--- *<br />

* Entries to <strong>Catalog</strong> 600 16.932 MSEC *<br />

* BCS ENQ Shr Sys 1,199 0.433 MSEC *<br />

* BCS ENQ Excl Sys 301 0.428 MSEC *<br />

* BCS DEQ 1,500 0.253 MSEC *<br />

* VVDS RESERVE CI 600 0.424 MSEC *<br />

* VVDS DEQ CI 600 0.219 MSEC *<br />

* VVDS RESERVE Shr 2,100 0.428 MSEC *<br />

* VVDS DEQ 2,100 0.256 MSEC *<br />

* SPHERE ENQ Excl Sys 300 0.454 MSEC *<br />

* SPHERE DEQ 300 0.294 MSEC *<br />

* VDSPM ENQ 2,100 0.021 MSEC *<br />

* VDSPM DEQ 2,100 0.020 MSEC *<br />

* BCS Get 601 0.051 MSEC *<br />

* BCS Put 300 2.457 MSEC *<br />

* VVDS I/O 2,700 1.795 MSEC *<br />

* SMF Write 300 0.177 MSEC *<br />

* IXLVECTR 1,502 0.007 MSEC *<br />

* Lookup/Pin UCB 300 0.038 MSEC *<br />

* Unpin UCB 300 0.020 MSEC *<br />

* RACROUTE Auth 600 0.554 MSEC *<br />

* RACROUTE Define 300 0.577 MSEC *<br />

*CAS***************************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

Figure 32. Performance Report after Allocating 300 Data Sets in VVDS <strong>Sharing</strong> Mode<br />

Comparison of these reports shows the following significant reductions:<br />

In ECS mode, the average time to process a catalog entry is reduced from<br />

16.932 MSEC to 6.316 MSEC.<br />

In VVDS sharing mode, you will find 2,700 VVDS I/Os <strong>and</strong> 2,100 VVDS<br />

RESERVE Shr, which reflect the read of the integrity VVRs, <strong>and</strong> 600 VVDS<br />

RESERVE CI, which reflects the time stamp update activity in the catalogs<br />

integrity VVR.<br />

In ECS mode, there is no VVDS activity at all. Instead, we see 600 IXLCACHE<br />

writes, which reflect the time stamp update activity in the catalog’s integrity<br />

VVR held in the Coupling Facility.<br />

There is no reason why the performance benefits we have experienced would not<br />

apply to your environment. Performing similar comparisons to those that we run<br />

will give a good indication as to what you may expect to achieve.<br />

Operations 51


4.2.5 Replacing AMS LISTCAT with the <strong>Catalog</strong> Search Interface<br />

If you are running AMS LISTCAT jobs on a regular basis, for example, to check<br />

the consistency of catalogs, you may want to consider replacing these jobs by<br />

implementing the <strong>Catalog</strong> Search Interface (CSI). Since the CAS can process<br />

multiple entries for one CSI request, this will result in performance improvements<br />

when compared with LISTCAT. Please see Appendix A, “<strong>Catalog</strong> Search<br />

Interface” on page 83, <strong>and</strong> Managing <strong>Catalog</strong>s, SC26-4914, for more information<br />

on the <strong>Catalog</strong> Search Interface.<br />

52 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong>


Chapter 5. Backup <strong>and</strong> Recovery<br />

5.1 Backup<br />

In this chapter we will discuss the importance of an effective backup <strong>and</strong> recovery<br />

strategy for catalogs in a Parallel Sysplex environment. We also discuss the<br />

techniques <strong>and</strong> utilities that are available for performing backup <strong>and</strong> recovery.<br />

Throughout this book, the backup of a catalog is taken to mean that a backup<br />

copy of the BCS component of the catalog is created.<br />

In the following sections we discuss:<br />

Backup<br />

Tape Volume <strong>Catalog</strong>s<br />

Recovery<br />

Post-recovery updates<br />

The Integrated <strong>Catalog</strong> Forward Recovery Utility<br />

<strong>Catalog</strong>s are essential system data sets, <strong>and</strong> in today’s Sysplex environment, it<br />

becomes more important to ensure backup copies are available. In a shared<br />

environment, a broken catalog has a tremendous impact to all systems sharing<br />

the catalog. In a Sysplex environment where the master catalog is shared, a<br />

broken master catalog may mean an outage of the entire Sysplex. In the topics<br />

that follow, we discuss the techniques <strong>and</strong> utilities you can apply to ensure you<br />

can maintain the integrity of your system after a disaster has struck.<br />

5.1.1 Backup Frequency<br />

The most important consideration for the backup frequency should be the time<br />

needed to recover a broken catalog. The time taken to recover a catalog can be<br />

decreased depending on how recently the backup copy has been made.<br />

Conversely, the time taken to recover a catalog without a recent backup copy <strong>and</strong><br />

high catalog update activity may take significantly longer. For some catalogs, a<br />

daily backup may be sufficient. However, for important applications that result in<br />

high catalog update activity, you may wish to increase the frequency with which<br />

you make catalog backups.<br />

5.1.2 Backup Techniques<br />

There are a number of different techniques that exist to perform backup <strong>and</strong><br />

recovery for catalogs. These techniques can, in turn, be used by different utilities.<br />

To simplify your backup procedures, it is possible to utilize the functionality built<br />

into the Storage <strong>Management</strong> Subsystem. If the catalog resides on an<br />

SMS-managed volume, the management class is used to control the backup<br />

frequency <strong>and</strong> the number of backup copies. This allows you to define specific<br />

management classes to achieve your needs for the backup frequency, <strong>and</strong> the<br />

number of backups you would like to maintain for different catalogs. SMS will<br />

invoke the DFSMShsm utility, which will in turn use the AMS EXPORT comm<strong>and</strong> to<br />

perform backup of a catalog.<br />

© Copyright <strong>IBM</strong> Corp. 1999 53


54 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

The following sections discuss the various backup utilities <strong>and</strong> techniques that<br />

you can employ in your environment, along with considerations that are unique to<br />

these techniques.<br />

5.1.3 Deciding on the Backup Technique<br />

Normally, the storage administrator decides which backup technique is<br />

appropriate. This can be based on speed, utilities available or a number of other<br />

business reasons. It may even be a combination of different utilities.<br />

The most important consideration, when deciding upon a backup technique, is<br />

that you perform some form of checking to ensure that the backup of the catalog<br />

or catalogs has been successful. We recommend that you test your backup <strong>and</strong><br />

recovery procedures <strong>and</strong> processes to be sure that the backup copy you have<br />

created is usable in the event of a disaster.<br />

You may also want to try out different utilities to see which one best suits your<br />

environment, <strong>and</strong> the ease with which post-recovery updates can take place.<br />

5.1.4 Backup Utilities<br />

A backup copy of a catalog can be created by one of the following <strong>IBM</strong> utilities:<br />

Access method services EXPORT comm<strong>and</strong><br />

DFSMSdss logical dump<br />

DFSMSdss full volume dump<br />

DFSMShsm Availability <strong>Management</strong><br />

To verify that the backup of your catalog has been successful, <strong>and</strong> the backup<br />

copy you created is usable, following are sample control statements for the<br />

different utilities, <strong>and</strong> the messages that we recommend you check.<br />

In later topics, we discuss the advantages <strong>and</strong> disadvantages of these utilities as<br />

input to your backup <strong>and</strong> recovery process, <strong>and</strong> procedure development.<br />

5.1.4.1 Access Method Services Export comm<strong>and</strong><br />

For the AMS EXPORT comm<strong>and</strong>, see Figure 33, <strong>and</strong> check that the following<br />

message is issued for each catalog you backed up:<br />

IDC0594I PORTABLE DATA SET CREATED SUCCESSFULLY


IDCAMS SYSTEM SERVICES TIME: 17:03:58<br />

EXPORT -<br />

UCAT.VSBOX01 -<br />

OUTFILE(RECEIVE) -<br />

TEMPORARY<br />

IDC0005I NUMBER OF RECORDS PROCESSED WAS 506<br />

IDC0594I PORTABLE DATA SET CREATED SUCCESSFULLY ON 05/14/99 AT 17:03:59<br />

IDC1147I IT IS RECOMMENDED THAT DIAGNOSE AND EXAMINE BE RUN BEFORE<br />

IDC1147I IMPORT OF CATALOG<br />

IDC0001I FUNCTION COMPLETED, HIGHEST CONDITION CODE WAS 0<br />

IDC0002I IDCAMS PROCESSING COMPLETE. MAXIMUM CONDITION CODE WAS 0<br />

Figure 33. IDCAMS EXPORT joblog Sample<br />

5.1.4.2 DFSMSdss Logical Dump<br />

For the DFSMSdss logical dump statements, see Figure 34. Check that the<br />

following message is issued <strong>and</strong> shows each catalog you specified in the<br />

INCLUDE statement:<br />

ADR454I (001)-DTDSC(01), THE FOLLOWING DATA SETS WERE<br />

SUCCESSFULLY PROCESSED<br />

Backup <strong>and</strong> Recovery 55


56 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

Figure 34. DFSMSdss Logical Dump joblog Sample<br />

5.1.4.3 DFSMSdss Full Volume Dump<br />

The DFSMSdss control statements for a full volume dump are shown in Figure<br />

35. Check that the following message is issued to indicate successful completion:<br />

ADR013I (001)-CLTSK(01), 1999.137 18:30:47 TASK COMPLETED WITH<br />

RETURN CODE 0000<br />

.<br />

PAGE 0001 5695-DF175 DFSMSDSS V1R5.0 DATA SET SERVICES 1999.137<br />

14:51<br />

DUMP - 00002002<br />

DATASET(INCLUDE(UCAT.VSBOX09 - 00003002<br />

UCAT.VSBOX01 - 00003102<br />

MCAT.SANDBOX.VSBOX01)) - 00003202<br />

OUTDDNAME(OUTDD) 00005002<br />

ADR101I (R/I)-RI01 (01), TASKID 001 HAS BEEN ASSIGNED TO COMMAND 'DUMP '<br />

ADR109I (R/I)-RI01 (01), 1999.137 14:51:18 INITIAL SCAN OF USER CONTROL<br />

STATEMEN<br />

ADR016I (001)-PRIME(01), RACF LOGGING OPTION IN EFFECT FOR THIS TASK<br />

ADR006I (001)-STEND(01), 1999.137 14:51:18 EXECUTION BEGINS<br />

ADR801I (001)-DTDSC(01), DATA SET FILTERING IS COMPLETE. 3 OF 3 DATA SETS<br />

ADR454I (001)-DTDSC(01), THE FOLLOWING DATA SETS WERE SUCCESSFULLY PROCESSED<br />

CLUSTER NAME UCAT.VSBOX09<br />

CATALOG NAME MCAT.SANDBOX.VSBOX01<br />

COMPONENT NAME UCAT.VSBOX09<br />

COMPONENT NAME UCAT.VSBOX09.CATINDEX<br />

CLUSTER NAME UCAT.VSBOX01<br />

CATALOG NAME MCAT.SANDBOX.VSBOX01<br />

COMPONENT NAME UCAT.VSBOX01<br />

COMPONENT NAME UCAT.VSBOX01.CATINDEX<br />

CLUSTER NAME MCAT.SANDBOX.VSBOX01<br />

CATALOG NAME MCAT.SANDBOX.VSBOX01<br />

COMPONENT NAME MCAT.SANDBOX.VSBOX01<br />

COMPONENT NAME MCAT.SANDBOX.VSBOX01.CATINDEX<br />

ADR006I (001)-STEND(02), 1999.137 14:51:19 EXECUTION ENDS<br />

ADR013I (001)-CLTSK(01), 1999.137 14:51:19 TASK COMPLETED WITH RETURN CODE<br />

0000


PAGE 0001 5695-DF175 DFSMSDSS V1R5.0 DATA SET SERVICES 1999.137<br />

18:30<br />

DUMP FULL - 00009001<br />

INDDNAME(INDD) - 00009101<br />

OUTDDNAME(OUTDD) 00009201<br />

ADR101I (R/I)-RI01 (01), TASKID 001 HAS BEEN ASSIGNED TO COMMAND 'DUMP '<br />

ADR109I (R/I)-RI01 (01), 1999.137 18:30:12 INITIAL SCAN OF USER CONTROL<br />

STATEMEN<br />

ADR016I (001)-PRIME(01), RACF LOGGING OPTION IN EFFECT FOR THIS TASK<br />

ADR006I (001)-STEND(01), 1999.137 18:30:12 EXECUTION BEGINS<br />

ADR006I (001)-STEND(02), 1999.137 18:30:47 EXECUTION ENDS<br />

ADR013I (001)-CLTSK(01), 1999.137 18:30:47 TASK COMPLETED WITH RETURN CODE<br />

0000<br />

ADR012I (SCH)-DSSU (01), 1999.137 18:30:47 DFSMSDSS PROCESSING COMPLETE.<br />

HIGHEST<br />

Figure 35. DFSMSdss Full Volume Dump joblog Sample<br />

5.1.4.4 DFSMShsm<br />

When utilizing DFSMShsm Availability <strong>Management</strong> or DFSMShsm comm<strong>and</strong><br />

backup, you must check the DFSMShsm activity logs for error messages related<br />

to your catalogs.<br />

5.1.5 Considerations for Developing the Backup Process<br />

It is important to underst<strong>and</strong> the requirements that relate to your environment,<br />

<strong>and</strong> choose the backup method that satisfies those requirements. There are a<br />

number of items that we feel it is important for you to consider. They are worthy of<br />

special attention because they are sometimes overlooked <strong>and</strong> only become<br />

apparent during the recovery phase. The items that you should consider are:<br />

5.1.5.1 BCS <strong>and</strong> VVDS<br />

Before you decide which backup technique <strong>and</strong> utility to use, it is important to<br />

underst<strong>and</strong> that a backup copy of your catalog only contains data from the BCS<br />

component of a catalog. To recover a VVDS, you need to restore all data sets<br />

residing on that volume.<br />

5.1.5.2 Aliases<br />

To preserve aliases use the AMS EXPORT comm<strong>and</strong>, DFSMSdss logical dump or<br />

DFSMShsm BACKDS comm<strong>and</strong> to backup catalogs. The aliases will be saved in the<br />

catalog backup copy that is created.<br />

5.1.5.3 Backup Copy Storage Media<br />

The media in which the backup copies are stored can be either tape or DASD.<br />

5.1.5.4 Tape Volume <strong>Catalog</strong><br />

Ensure that backup copies of Tape Volume <strong>Catalog</strong>s (VOLCAT) are not stored on<br />

a virtual tape residing in a 3494 Virtual Tape Server (VTS). Additionally, never<br />

store a backup copy of a VOLCAT to a physical cartridge if you do not have read<br />

compatible tape drives outside a 3494 or 3495 Automated Tape Library (ATL).<br />

The reason for this is that you will not be able to access an SMS-managed tape<br />

volume if the VOLCAT is broken <strong>and</strong> needs to be recovered.<br />

Backup <strong>and</strong> Recovery 57


58 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

5.1.5.5 Integrated <strong>Catalog</strong> Forward Recovery Utility<br />

If your environment utilizes, or is considering utilizing, the Integrated <strong>Catalog</strong><br />

Forward Recovery Utility (ICFRU) 1 , remember that ICFRU requires a portable<br />

copy of the BCS created by an AMS EXPORT comm<strong>and</strong> as an input data set. If you<br />

decide to use a DFSMSdss logical dump or the DFSMShsm BACKDS comm<strong>and</strong> to<br />

create your catalog backup copies, additional steps are needed to create a<br />

portable backup copy that ICFRU can use. The additional steps for DFSMSdss<br />

<strong>and</strong> DFSMShsm are:<br />

DFSMSdss<br />

1. Run logical RESTORE for the catalog.<br />

2. Run AMS EXPORT.<br />

DFSMShsm<br />

1. Run RECOVER dsname for the catalog.<br />

2. Run AMS EXPORT.<br />

5.1.5.6 DFSMSdss Restore<br />

Backup copies of catalogs created by DFSMSdss can only be restored to a<br />

volume with the same volume serial number (VOLSER) as the source volume.<br />

This means that DFSMSdss logical dump <strong>and</strong> restore cannot be used to move a<br />

catalog to a different volume with a different VOLSER. For more information<br />

about DFSMSdss, refer to DFSMS/MVS V1R5 DFSMSdss Storage<br />

Administration Guide, SC26-4930.<br />

To move a catalog to another volume, you need to use DFSMSdss COPY comm<strong>and</strong><br />

or use AMS EXPORT/IMPORT comm<strong>and</strong>s.<br />

5.1.6 Considerations for Developing the Backup Procedures<br />

Following the previous topic which deals with product, structural <strong>and</strong> architectural<br />

considerations is the philosophy that you employ regarding the backup of your<br />

catalogs.<br />

5.1.6.1 Master <strong>Catalog</strong> Availability<br />

We recommend that a procedure be implemented to ensure an alternate master<br />

catalog is always made available. For information on defining <strong>and</strong> using an<br />

alternate master catalog, refer to Managing <strong>Catalog</strong>s, SC26-4914 "Creating <strong>and</strong><br />

Using an Alternate Mastercatalog".<br />

5.1.6.2 Creating Master <strong>Catalog</strong> Copies<br />

Backup copies of the master catalog should be created by an AMS EXPORT job.<br />

Additionally, periodic full volume dumps of the master catalog’s volume will<br />

provide the ability to perform a restore by using the st<strong>and</strong>-alone version of<br />

DFSMSdss. This is especially useful if the volume cannot be accessed by<br />

another system.<br />

5.1.6.3 Creating User <strong>Catalog</strong> Copies<br />

For user catalogs, we recommend that you define them on SMS-managed<br />

volumes. This allows you to control the backup frequency <strong>and</strong> the number of<br />

backup copies kept by assigning them to a specific management class which<br />

matches the requirements of the catalog.<br />

1 ICFRU is Program Offering, the Program number is 5798-DXQ.


5.2 Tape Volume <strong>Catalog</strong>s<br />

We recommend DFSMShsm as the product to create backup copies of your user<br />

catalogs. As DFSMShsm invokes AMS EXPORT to backup catalogs, the<br />

DFSMShsm RECOVER dsname comm<strong>and</strong> can be used to recover a catalog to a<br />

volume other than the source.<br />

As DFSMShsm backups are directed to tape, there are special considerations<br />

that must be taken for Tape Volume <strong>Catalog</strong>s. We recommend that the most<br />

recent backup copy of each VOLCAT should reside on DASD. One of the ways in<br />

which you can achieve this is to use DFSMSdss logical dump to perform a<br />

backup of all VOLCATs in one step <strong>and</strong> direct the DFSMSdss output to a<br />

generation data set (GDS) on DASD. This means that the latest copies are<br />

available on DASD. Refer to Figure 36, for sample JCL <strong>and</strong> DFSMSdss logical<br />

dump control statements. To create backup copies for catalogs, the catalog<br />

names must be fully qualified.<br />

//VOLCATB JOB (ACC3),'WETT3-SAVE',MSGCLASS=K,CLASS=A,<br />

// MSGLEVEL=(1,1),NOTIFY=&SYSUID<br />

//DUMP EXEC PGM=ADRDSSU,REGION=6000K<br />

//SYSPRINT DD SYSOUT=*<br />

//OUTDD DD DSN=hlq.VOLCAT.GDG1(+1),<br />

// UNIT=3390,<br />

// VOL=SER=volser,<br />

// SPACE=(CYL,(10,5),RLSE),<br />

// DISP=(NEW,CATLG,DELETE)<br />

//SYSIN DD *<br />

DUMP -<br />

OUTDDNAME(OUTDD) -<br />

DATASET(INCLUDE(hlq.VOLCAT.VGENERAL -<br />

hlq.VOLCAT.VA -<br />

hlq.VOLCAT.VB -<br />

hlq.VOLCAT.VC))<br />

/*<br />

Figure 36. Sample JCL for DFSMSdss VOLCAT Backup<br />

The limit count you specified in the generation data group (GDG) definition will<br />

control the number of VOLCAT backup copies you would like to maintain on<br />

DASD.<br />

Figure 37 shows how to define a GDG in an SMS environment. In this sample up<br />

to five backup copies can be maintained on DASD.<br />

Backup <strong>and</strong> Recovery 59


5.2.1 Using DFSMSdss<br />

60 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

//DEFGDG1 JOB (7904,NCS),WETT3,MSGLEVEL=(1,1),MSGCLASS=K,<br />

// &SYSUID,CLASS=A<br />

//GDGBASE EXEC PGM=IDCAMS<br />

//SYSPRINT DD SYSOUT=*<br />

//SYSIN DD *<br />

DEFINE -<br />

GENERATIONDATAGROUP -<br />

(NAME(hlq.VOLCAT.GDG1) -<br />

SCRATCH -<br />

LIMIT(5))<br />

/*<br />

Figure 37. Sample JCL to Create a GDG Base Entry for SMS-Managed GDSs<br />

Figure 38 shows how to define a non SMS-managed GDG.<br />

//DEFGDG2 JOB (7904,NCS),WETT3,MSGLEVEL=(1,1),MSGCLASS=K,<br />

// &SYSUID,CLASS=A<br />

//GDGBASE EXEC PGM=IDCAMS<br />

//GDGMOD DD DSN=hlq.VOLCAT.GDG1,<br />

// DISP=(NEW,KEEP),<br />

// UNIT=3390,<br />

// VOL=SER=volser,<br />

// SPACE=(CYL,(0)),<br />

// DCB=(DSORG=PS,BLKSIZE=0)<br />

//SYSPRINT DD SYSOUT=*<br />

//SYSIN DD *<br />

DEFINE -<br />

GENERATIONDATAGROUP -<br />

(NAME(hlq.VOLCAT.GDG1) -<br />

SCRATCH -<br />

LIMIT(5))<br />

/*<br />

Figure 38. Sample JCL to Create a GDG Base Entry for a non SMS-Managed volume<br />

The advantage of using DFSMSdss to perform the backups of your VOLCATs is<br />

that it will backup all VOLCATs in one job step <strong>and</strong> require one output GDS<br />

regardless of the number of VOLCATs you have.<br />

The disadvantage is that you can only recover a catalog with DFSMSdss logical<br />

restore to a volume with a volser that matches the source.<br />

5.2.2 Using AMS Export<br />

IfyoudecidetousetheAMSEXPORT comm<strong>and</strong> to backup your VOLCATs, you<br />

need to define a GDG for each VOLCAT. Only one catalog can be exported by<br />

one AMS EXPORT comm<strong>and</strong>.<br />

The advantage is that you can AMS IMPORT the catalog to a different volume with<br />

a different volser.


5.3 Recovery<br />

If a catalog is broken due to a structural error, or if it is not accessible because of<br />

a hardware or media problem, it is likely that the catalog needs to be recovered.<br />

To reduce the outage <strong>and</strong> its subsequent impact, it is essential to implement a<br />

recovery methodology that reduces any outage to a minimum. To help you make<br />

that decision, the following sections describe the considerations that relate to the<br />

process, procedures, techniques <strong>and</strong> utilities.<br />

5.3.1 Determining When to Recover a <strong>Catalog</strong><br />

If a catalog is not accessible, or if a catalog structural error cannot be repaired by<br />

recovering the damaged record using AMS DELETE <strong>and</strong> DEFINE comm<strong>and</strong>s, it is<br />

likely that a full recovery of the BCS will be necessary. The outage time can be<br />

usually reduced the more quickly you can begin your recovery process, <strong>and</strong><br />

procedures are brought in to action.<br />

5.3.2 Recovery Techniques <strong>and</strong> Utility Actions<br />

The technique used to recover a catalog depends on the technique <strong>and</strong> utility<br />

used for backup. The relationship between backup <strong>and</strong> recovery utilities is shown<br />

in Table 5.<br />

Table 5. Backup <strong>and</strong> Recovery Utilities Relationship<br />

Backup Utility Recover Utility Alias H<strong>and</strong>ling<br />

AMS EXPORT comm<strong>and</strong> AMS IMPORT comm<strong>and</strong> Aliases are defined if ALIAS<br />

is specified with IMPORT<br />

DFSMSdss logical dump DFSMSdss logical restore Aliases are defined<br />

DFSMSdss full volume<br />

dump<br />

DFSMSdss full volume or<br />

physical data set restore<br />

DFSMShsm BACKDS DFSMShsm RECOVER<br />

dsname<br />

Regardless of the technique <strong>and</strong> utility used for backup <strong>and</strong> recovery, you need to<br />

manually check for recent changes to the BCS that are not reflected in the<br />

recovered copy. If you are utilizing ICFRU to create a new portable backup copy,<br />

this will be done as part of the ICFRU process.<br />

We strongly recommend that access to the catalog is restricted during any<br />

maintenance or recovery action, by using the AMS LOCK <strong>and</strong> UNLOCK comm<strong>and</strong>s.<br />

For more information about catalog recovery <strong>and</strong> locking refer to Managing<br />

<strong>Catalog</strong>s, SC26-4914.<br />

5.3.3 Considerations for Developing the Recovery Process<br />

No alias h<strong>and</strong>ling<br />

Aliases are defined<br />

There are certain elements of any catalog recovery process that must be<br />

included. In the following topics we discuss those elements that you should<br />

include when developing your process.<br />

5.3.3.1 Master <strong>Catalog</strong> Recovery<br />

Recovery of a master catalog must be performed from a different system. During<br />

the time that the catalog is being used as a master catalog, no recovery can be<br />

performed. For this reason, recovery of a master catalog always results in a<br />

Backup <strong>and</strong> Recovery 61


62 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

system outage. If the master catalog is shared in a Sysplex, this means an<br />

outage for the whole Sysplex. If there is no other system available to perform the<br />

recovery of the master catalog, a DFSMSdss St<strong>and</strong>-Alone restore of the volume<br />

containing the master catalog may be the only way to recover.<br />

As long as a catalog is used as a master catalog it cannot be locked. While a<br />

catalog is locked, any unauthorized requests to access the catalog will fail. Only<br />

users who have READ access authority to RACF profile IGG.CATLOCK can<br />

access a locked catalog.<br />

When there is an alternate master catalog available, an IPL can be performed<br />

using the alternate master catalog.<br />

5.3.3.2 Imbed <strong>and</strong> Replicate<br />

As explained in “Planning for the New Functions of DFSMS/MVS 1.5” on page 15,<br />

the use of IMBED <strong>and</strong> REPLICATE is no longer valid <strong>and</strong> these keywords will be<br />

ignored if specified when defining a new catalog. For compatibility reasons,<br />

IMBED <strong>and</strong> REPLICATE are still supported for IMPORT <strong>and</strong> DFSMSdss<br />

RESTORE. However, we suggest that a catalog be preallocated that has no<br />

imbedded indexes to simplify any recovery action. This will mean that you need to<br />

specify the INTOEMPTY keyword for an AMS IMPORT process, or the REPLACE<br />

keyword for a DFSMSdss logical restore.<br />

5.3.3.3 Alias H<strong>and</strong>ling <strong>and</strong> DFSMSdss Restore<br />

DFSMSdss logical restore h<strong>and</strong>les aliases differently depending on whether the<br />

catalog is pre-allocated or not. If the catalog to be restored is preallocated but not<br />

empty, aliases are not restored. (Note: An empty catalog means that the catalog<br />

contains nothing other than its self describing record.)<br />

5.3.3.4 Source Volume not Available<br />

If you must restore the catalog because the source volume is not available, you<br />

need to use the utility ICKDSF to initialize a different volume with the VOLSER of<br />

the source volume.<br />

5.3.3.5 Fully Qualified Name<br />

With DFSMSdss RESTORE you must specify the fully qualified name to restore a<br />

catalog.<br />

5.3.3.6 <strong>Catalog</strong> Reorganization<br />

DFSMSdss does not reorganize a catalog during logical restore.<br />

5.3.3.7 Determining the Most Recent Version<br />

If your backup <strong>and</strong> recovery strategy is DFSMShsm, generation numbers are<br />

available to keep track of the most recent backup version. A catalog cannot be<br />

recovered with a new name.<br />

IfyouareusingAMSEXPORT/IMPORT comm<strong>and</strong>s, you can use SMF type 36 records<br />

to determine your most recent backup version. For each successful export of a<br />

catalog, an SMF type 36 record is created.


5.3.4 Considerations for Developing Recovery Procedures<br />

In the following topics we discuss the considerations that apply to the recovery of<br />

catalogs, <strong>and</strong> the manner in which you can simplify the procedures that are put in<br />

place.<br />

5.3.4.1 Master <strong>Catalog</strong>s<br />

To recover a broken master catalog, you need to submit an AMS IMPORT job from a<br />

different system to recover the master catalog from the portable backup copy.<br />

If you do not have a usable portable backup copy of your master catalog<br />

available, you must either perform a full volume recovery from a full volume<br />

backup of the master catalogs volume, or you can perform a physical restore of<br />

the tracks containing the master catalog. You need to check for recent changes<br />

which are not reflected in the backup copy that has just been restored.<br />

Recommendation<br />

To minimize update activity to the master catalog, <strong>and</strong> to reduce the exposure<br />

to breakage, we strongly recommend that only SYS1 data sets, user catalog<br />

connector records, <strong>and</strong> the aliases pointing to those connectors should be in<br />

the master catalog.<br />

5.3.4.2 User <strong>Catalog</strong>s<br />

We recommend using the DFSMShsm RECOVER comm<strong>and</strong> in preference to other<br />

utilities to recover user catalogs. Using DFSMShsm, you do not need to delete<br />

the broken catalog, because during the recover process, the catalog is deleted<br />

<strong>and</strong> redefined using the attributes of the backup copy. If you wish to change the<br />

size or characteristics of the catalog, you will need to preallocate the catalog. In<br />

both cases, aliases for that catalog in the systems master catalog will not be<br />

deleted. Aliases preserved in the backup copy will be defined if they do not<br />

already exist.<br />

5.3.4.3 Moving <strong>Catalog</strong>s to Other Volumes<br />

The DFSMShsm RECOVER comm<strong>and</strong> can also be used to move a catalog to a<br />

different volume with a different volume serial number. The TOVOLUME keyword<br />

is available to specify the target non-SMS managed volume. For SMS-managed<br />

catalogs, the TOVOLUME keyword is only honored if a storage class with the<br />

GUARANTEED SPACE attribute is assigned. Please refer to the DFSMS/MVS<br />

V1R5 DFSMShsm Storage Administration Reference, SH21-1075, <strong>and</strong><br />

DFSMS/MVS V1R5 DFSMShsm Storage Administration Guide, SH21-1076, for<br />

more detailed information.<br />

5.3.4.4 DFSMSdss User <strong>Catalog</strong> <strong>and</strong> VOLCAT Restore<br />

To recover VOLCATs or user catalogs using DFSMSdss logical restore, you must<br />

specify the fully qualified name of each catalog you need to restore.<br />

5.3.4.5 Preventing <strong>Catalog</strong> Activity during Restore<br />

Before you run the restore for the catalog, you should restrict access to the<br />

broken catalog, or define a new catalog by an AMS ALTER comm<strong>and</strong>, with the<br />

LOCK parameter or specify the LOCK parameter when the catalog is initially<br />

defined. See Figure 39 for a sample job to lock an existing catalog. We have<br />

already stated that to use the LOCK <strong>and</strong> UNLOCK parameters for catalogs, you<br />

Backup <strong>and</strong> Recovery 63


5.4 Post-Recovery Updates<br />

64 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

need to have RACF profile IGG.CATLOCK defined. Additionally, you must have<br />

READ authority to profile IGG.CATLOCK <strong>and</strong> ALTER authority to the catalog.<br />

//ALTERL JOB (999,POK),MSGLEVEL=1,NOTIFY=&SYSUID<br />

//ALTER EXEC PGM=IDCAMS<br />

//UCAT DD VOL=SER=volser,UNIT=3390,DISP=SHR<br />

//SYSPRINT DD SYSOUT=*<br />

//SYSIN DD *<br />

ALTER -<br />

SYS1.VOLCAT.VGENERAL -<br />

LOCK -<br />

FILE(UCAT)<br />

/*<br />

Figure39. SampleJCLtoLocka<strong>Catalog</strong>byIDCAMSALTERLOCKComm<strong>and</strong><br />

Depending on whether the catalog to be restored is preallocated or still exists,<br />

you must specify the REPLACE keyword on the DFSMSdss RESTORE job.<br />

Figure 40 shows sample JCL to restore the most recent backup copy of a<br />

VOLCAT:<br />

//VOLCATR JOB (ACCT#),'WETT3-RES',MSGCLASS=K,CLASS=S,<br />

// MSGLEVEL=(1,1),NOTIFY=&SYSUID<br />

//RESTORE EXEC PGM=ADRDSSU,REGION=6000K<br />

//SYSPRINT DD SYSOUT=*<br />

//INDD DD DSN=hlq.VOLCAT.GDG1(+0),<br />

//OUTDD DD UNIT=3390,VOL=SER=volser,DISP=SHR<br />

//SYSIN DD *<br />

RESTORE -<br />

DATASET(INCLUDE(hlq.VOLCAT.VGENERAL)) -<br />

INDDNAME(INDDD) -<br />

OUTDDNAME(OUTDD) -<br />

REPLACE<br />

/*<br />

Figure 40. Sample JCL to Restore the Most Recent <strong>Catalog</strong> Backup Copy from a GDS<br />

The version of your catalog that you have just recovered reflects the status of the<br />

catalog at the time the backup copy was taken. If you are not using ICFRU or<br />

other vendor utilities, for example, <strong>Catalog</strong> Solution (a trademark of<br />

SOFTWORKS), you must manually check for changes to the catalog which are<br />

not reflected in the recovered copy.<br />

5.4.1 Manually Checking for Missing Updates<br />

To check for changes which are not reflected, you can use the AMS DIAGNOSE<br />

comm<strong>and</strong> to compare the VVDSs to the BCS. You need to list VVDSs connected<br />

to the catalog to find out which VVDSs you need to compare against the BCS.<br />

This only will work for VSAM <strong>and</strong> SMS-managed data sets because non-SMS<br />

managed <strong>and</strong> tape data sets are not reflected in a VVDS. Issuing the LISTCAT<br />

NONVSAM comm<strong>and</strong> before <strong>and</strong> after the recovery may help to find changes for<br />

non-SMS managed <strong>and</strong> tape data sets.


A more efficient way to check for changes since the last backup was taken is to<br />

collect <strong>and</strong> check SMF records generated by the ICF. You must make sure that<br />

you are not suppressing SMF record types 61, 65, <strong>and</strong> 66 in member SMFPRMxx<br />

in SYS1.PARMLIB for all jobs including subsystems <strong>and</strong> system tasks.<br />

The record types that are created <strong>and</strong> need to be analyzed are:<br />

RECORD TYPE 61 (3D)<br />

Created by ICF DEFINE ACTIVITY:<br />

IDCAMS DEFINE<br />

IEHPROGM CATLG<br />

RECORD TYPE 65 (41)<br />

Created by ICF DELETE ACTIVITY:<br />

IDCAMS DELETE<br />

IEHPROGM UNCATLG<br />

RECORD TYPE 66 (42)<br />

Created by ICF ALTER ACTIVITY:<br />

IDCAMS ALTER<br />

5.4.2 Using DFSORT in the Checking Process<br />

The <strong>IBM</strong> product DFSORT can be used to filter out the SMF records for a specific<br />

catalog corresponding to the time frame since the last backup copy was made.<br />

Figure 41 shows sample DFSORT control statements to collect catalog related<br />

record types:<br />

//SYSIN DD *<br />

OPTION VLSHRT<br />

RECORD TYPE=V<br />

INCLUDE COND=((6,1,BI,EQ,X'3D'),AND,<br />

(11,4,BI,GT,X'0099115F'),AND,<br />

(76,20,CH,EQ,C'MCAT.SANDBOX.VSBOX01'))<br />

SORT FIELDS=(11,4,BI,A)<br />

/*<br />

Figure 41. DFSORT Control Statements to Collect SMF Record type 61<br />

In the sample in Figure 41:<br />

The first comparison checks for SMF record type 61 (3D).<br />

The second comparison checks records created after day 99115.<br />

The third comparison checks for a 20-character catalog name<br />

MCAT.SANDBOX.VSBOX01.<br />

The SORT FIELDS Statement sorts the records by date in ascending order.<br />

For more information with respect to the format <strong>and</strong> contents of the SMF records<br />

see OS/390 V2R7.0 MVS System <strong>Management</strong> Facilities (SMF), GC28-1783.<br />

Backup <strong>and</strong> Recovery 65


5.5 Integrated <strong>Catalog</strong> Forward Recovery Utility<br />

66 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

Integrated <strong>Catalog</strong> Forward Recovery Utility (ICFRU) is a powerful utility that will<br />

help you to reduce any outage to a minimum where forward recovery of a catalog<br />

is required.<br />

ICFRU Requirements:<br />

ICFRU needs a backup copy of the BCS, created by an AMS EXPORT comm<strong>and</strong>,<br />

known as the portable backup copy as its foundation. If this portable copy is not<br />

available, then ICFRU cannot be used.<br />

Additionally, SMF record types 61, 65, <strong>and</strong> 66 created by ICF activity will be<br />

needed from all systems sharing the catalog to be recovered. These SMF records<br />

can be h<strong>and</strong>led as a log file for catalog changes. The SMF records contain the<br />

complete sphere of each catalog record added, deleted or altered. These catalog<br />

records can be combined with the catalog records from the portable backup copy<br />

to create a new portable backup copy of the catalog to be recovered. This new<br />

updated portable copy can be used as an input data set for the AMS IMPORT<br />

comm<strong>and</strong>.<br />

ICFRU actually uses two programs. First, the Integrated <strong>Catalog</strong> Forward<br />

Recovery Record Selection <strong>and</strong> Validation (ICFRRSV) program performs the<br />

extract of the appropriate SMF records. These records are then sorted by calling<br />

DFSORT, <strong>and</strong> are processed together with records from the EXPORT copy by the<br />

Integrated <strong>Catalog</strong> Forward Recovery Record Analysis <strong>and</strong> Processing<br />

(ICFRRAP) program to create the new portable data set.<br />

See Figure 42 for a simplified data flow of ICFRU. For more detailed information,<br />

refer to Integrated <strong>Catalog</strong> Forward Recovery Utility Program<br />

Description/Operations, SH20-6952.


Actual SMF records<br />

SYS1.SC63.MANx SYS1.SC64.MANx<br />

portable<br />

backup copy<br />

created by<br />

export<br />

Figure 42. ICFRU Simplified Data Flow<br />

ICFRU Accumulated SMF records<br />

SYS1.SC65.MANx<br />

selected<br />

<strong>and</strong> sorted<br />

SMF recors<br />

ICFRU<br />

newportable<br />

backup copy<br />

IDCAMS<br />

IMPORT<br />

RECOVERED<br />

CATALOG<br />

ICFRU Reports<br />

If you do not have a portable backup copy of the catalog you wish to recover, for<br />

example, because you use DFSMShsm or DFSMSdss to create your catalog<br />

backups, you will need to recover the catalog according to the backup utility you<br />

are using.<br />

Once this copy is created, you can issue an AMS EXPORT comm<strong>and</strong> to create a<br />

portable copy of the catalog to be recovered <strong>and</strong> use this as input to ICFRU.<br />

Backup <strong>and</strong> Recovery 67


68 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong>


Chapter 6. Analyzing Structural Integrity<br />

6.1 Structural Integrity<br />

In the sections that follow, we describe why it is necessary to analyze the<br />

structural integrity of your catalogs, <strong>and</strong> how to ascertain if the data set<br />

information in the BCS, VVDS <strong>and</strong> VTOC is in synchronization. We will show<br />

what utilities are available <strong>and</strong> how to recover from structural errors.<br />

In the following sections we cover:<br />

Structural integrity considerations<br />

Synchronization errors <strong>and</strong> correction<br />

Failures associated with catalog sharing<br />

Failures affecting the CAS<br />

Structural errors in your catalog environment may result in lack of access to data<br />

sets defined in the failing catalog, as well as an impact on the CAS for all systems<br />

sharing the catalog that has been structurally compromised. This may result in an<br />

abend or hang situations for the CAS. In a sysplex environment it is important to<br />

keep vital system address spaces like the CAS running.<br />

6.1.1 When to Check the Structural Integrity<br />

You should suspect the structural integrity of a catalog if non-zero return codes<br />

are issued during your daily catalog backup. The same is true if you receive any<br />

error messages or non-zero return codes accessing a catalog. These should<br />

send a clear signal that you should check the structural integrity <strong>and</strong> take the<br />

appropriate repair action. We suggest that you regularly run jobs to check the<br />

structural integrity of your catalogs. This will create additional sysplex resource<br />

overhead, but it may decrease the chance of suffering an outage of the sysplex if<br />

a structural error is not fixed before it becomes more serious. Like a computer<br />

virus, a structural error may exist <strong>and</strong> do no harm until a certain condition occurs.<br />

An example of this could be a control interval (CI) or control area (CA) split<br />

failure, which may have the end result that your catalog is no longer accessible,<br />

<strong>and</strong> abends in the CAS may be seen.<br />

6.1.2 How to Check the Structural Integrity<br />

We recommend that the internal VSAM structure of catalogs should be checked<br />

using the AMS EXAMINE comm<strong>and</strong>, which analyzes <strong>and</strong> reports on the structural<br />

integrity of the index <strong>and</strong> data components of the catalog. We recommend that<br />

INDEXTEST as well as DATATEST should be performed.<br />

If EXAMINE detects an error related to a certain entry, you can try to use the AMS<br />

DELETE comm<strong>and</strong> to delete this entry. However, it is important that, before any<br />

recovery action or delete is attempted, that you try to take a backup of the data<br />

set or the entry. If a partial cluster entry is detected, an AMS DELETE comm<strong>and</strong><br />

using the TRUENAME parameter can correct the situation.<br />

If deletion of the failing entry is possible, you will then need to re-run EXAMINE. If<br />

there are no further errors detected, you can redefine <strong>and</strong> recover the failing<br />

entry.<br />

© Copyright <strong>IBM</strong> Corp. 1999 69


70 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

In most cases a catalog structural error means that you will need to recover the<br />

BCS from the most recent backup copy.<br />

6.1.3 The Consequences of Neglecting Structural Integrity<br />

Backup utilities may fail if they detect a structural error <strong>and</strong> leave you without a<br />

backup copy of the catalog. This may require some explaining in a recovery<br />

situation! There is also the chance that backup utilities will not detect a structural<br />

error in your catalog, which may mean that the backup copies taken are<br />

unusable. This will result in an additional, unnecessary outage if you need to<br />

recover the catalog. You will need to find the last usable backup copy <strong>and</strong> then<br />

carry out the post-recovery actions described in 5.4, “Post-Recovery Updates” on<br />

page 64. This has the result of extending the time period that you must look for<br />

updates to the catalog.<br />

6.2 Synchronization Errors<br />

In addition to the internal structure of catalogs, you should also check for<br />

synchronization errors. Synchronization errors may be the result of AMS DEFINE,<br />

DELETE or ALTER jobs that were canceled by force, or due to system errors not<br />

allowing a job to complete successfully. In this case the necessary cleanup<br />

actions may not be done. Differences between BCS, VVDS <strong>and</strong> VTOC may make<br />

a data set inaccessible or otherwise unusable <strong>and</strong> may also lead to CAS<br />

problems.<br />

The dependencies between BCS <strong>and</strong> VVDS for SMS-managed volumes, as well<br />

as for non-SMS managed volumes, are shown in Figure 43.<br />

SBOX02<br />

SMS<br />

VTOC<br />

VTOCIX<br />

VVDS<br />

UCAT.SBOX02<br />

VSAM UCAT.SBOX02<br />

VTOC<br />

VTOCIX<br />

VVDS<br />

SBOX01<br />

NON-SMS<br />

MCAT.SBOX01<br />

MCAT.SBOX01<br />

nonVSAM MCAT.SBOX01<br />

Figure 43. ICF-<strong>Catalog</strong> BCS, VVDS Dependencies<br />

VTOC<br />

VTOCIX<br />

VVDS<br />

SBOX03<br />

SMS<br />

SMS<br />

nonVSAM MCAT.SBOX01<br />

VSAM UCAT.SBOX02


Volume SBOX01 is non-SMS-managed <strong>and</strong> contains a master catalog as well as<br />

one non-SMS-managed, non-VSAM data set cataloged in the master catalog<br />

MCAT.SBOX01.<br />

Volume SBOX02 contains a user catalog, UCAT.SBOX02; <strong>and</strong> one VSAM KSDS<br />

cluster cataloged in UCAT.SBOX02.<br />

Volume SBOX03 contains one SMS-managed, non-VSAM data set cataloged in<br />

the master catalog; <strong>and</strong> one SMS-managed VSAM KSDS cluster cataloged in<br />

user catalog UCAT.SBOX02.<br />

The contents of the BCS, VVDS <strong>and</strong> VTOC for all volumes are as follows:<br />

SBOX01 non-SMS managed volume<br />

BCS MCAT.SBOX01<br />

UCAT connector record for UCAT.SBOX02<br />

Entry for SYS1.VVDS.VSBOX01<br />

Entry for SYS1.VVDS.VSBOX02<br />

Entry for non-VSAM non-SMS managed data set on SBOX01<br />

Entry for non-VSAM SMS-managed data set on SBOX03<br />

VVDS<br />

VVR VVDS self-describing<br />

VVR for MCAT index component<br />

VVR for MCAT data component<br />

VTOC<br />

F4DSCB<br />

F1DSCB for VTOCIX<br />

F1DSCB for VVDS<br />

F1DSCB for MCAT index component<br />

F1DSCB for MCAT data component<br />

F1DSCB for non-VSAM data set<br />

SBOX02 SMS-managed volume<br />

BCS<br />

Entry for SYS1.VVDS.SBOX02<br />

Entry for VSAM KSDS on volume SBOX02<br />

Entry for VSAM KSDS on volume SBOX03<br />

VVDS<br />

VVR VVDS self-describing<br />

VVR for UCAT.SBOX02 index component<br />

VVR for UCAT.SBOX02 data component<br />

VVR for VSAM KSDS index component<br />

VVR for VSAM KSDS data component<br />

VTOC<br />

Analyzing Structural Integrity 71


72 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

F4DSCB<br />

F1DSCB for VTOCIX<br />

F1DSCB for VVDS<br />

F1DSCB for UCAT.SBOX02 index component<br />

F1DSCB for UCAT.SBOX02 data component<br />

F1DSCB for VSAM KSDS index component<br />

F1DSCB for VSAM KSDS data component<br />

SBOX03 SMS-managed volume<br />

VVDS<br />

VVR VVDS self-describing<br />

VVR for KSDS index component<br />

VVR for KSDS data component<br />

NVR for non-VSAM SMS managed data set<br />

VTOC<br />

F4DSCB<br />

F1DSCB for VTOCIX<br />

F1DSCB for VVDS<br />

F1DSCB for KSDS index component<br />

F1DSCB for KSDS data component<br />

F1DSCB for non-VSAM<br />

6.2.1 What Causes Synchronization Errors<br />

Common synchronization errors can be caused by:<br />

BCS entry missing<br />

VVDS entry missing<br />

Duplicate VVRs or NVRs<br />

Orphan VVRs or NVRs<br />

Uncataloged VSAM or SMS-managed non-VSAM data sets<br />

VTOC entry missing<br />

6.2.2 Detecting Synchronization Errors<br />

Using the AMS DIAGNOSE comm<strong>and</strong>, you can analyze <strong>and</strong> check the dependent<br />

content <strong>and</strong> validity of catalog <strong>and</strong> VVDS records. To check the dependent<br />

content of catalog records, you need to specify the COMPAREDD or the<br />

COMPAREDS keywords with the DIAGNOSE comm<strong>and</strong>.<br />

To compare a BCS against the VVDS, you must specify:<br />

DIAGNOSE ICFCATLOG COMPAREDD(diag01)<br />

To compare a VVDS against a BCS, you must specify:<br />

DIAGNOSE VVDS COMPAREDD(diag01)


If you are comparing:<br />

A BCS: the VVDS is checked for dependency.<br />

A VVDS: the BCS <strong>and</strong> the VTOC are checked for dependency.<br />

To make sure that all possible errors will be detected, both checks must be<br />

performed.<br />

SeeFigure44forsampleJCLtoDIAGNOSE BCS records <strong>and</strong> check the dependent<br />

records of the VVDS on volumes SBOX01 <strong>and</strong> SBOX02.<br />

//TATERS3 JOB (999,POK),MSGLEVEL=1,NOTIFY=&SYSUID<br />

//DIAGN EXEC PGM=IDCAMS<br />

//DIAG01 DD VOL=SER=SBOX01,UNIT=3390,DISP=SHR,<br />

// DSN=SYS1.VVDS.VSBOX01,AMP='AMORG'<br />

//DIAG02 DD VOL=SER=SBOX02,UNIT=3390,DISP=SHR,<br />

// DSN=SYS1.VVDS.VSBOX02,AMP='AMORG'<br />

//DIAGDD DD DSN=MCAT.SANDBOX.VSBOX01,DISP=SHR<br />

//SYSPRINT DD SYSOUT=*<br />

//SYSIN DD *<br />

DIAGNOSE -<br />

ICFCATALOG -<br />

INFILE(DIAGDD) -<br />

COMPAREDD(DIAG01 DIAG02)<br />

/*<br />

Figure 44. Sample to DIAGNOSE a BCS <strong>and</strong> Compare to Two VVDSs<br />

Figure 45 shows sample JCL to run DIAGNOSE for the VVDS of volume SBOX01: A<br />

compare is performed against the BCS records of catalog<br />

MCAT.SANDBOX.VSBOX01 <strong>and</strong> dependency to the VTOC of volume SBOX01 is<br />

checked.<br />

//TATERS3 JOB (999,POK),MSGLEVEL=1,NOTIFY=&SYSUID<br />

//DIAGN EXEC PGM=IDCAMS<br />

//DIAGDD DD VOL=SER=SBOX01,UNIT=3390,DISP=SHR,<br />

// DSN=SYS1.VVDS.VSBOX01,AMP='AMORG'<br />

//CAT01 DD DSN=MCAT.SANDBOX.VSBOX01,DISP=SHR<br />

//SYSPRINT DD SYSOUT=*<br />

//SYSIN DD *<br />

DIAGNOSE -<br />

ICFCATALOG -<br />

INFILE(DIAGDD) -<br />

COMPAREDD(CAT01)<br />

/*<br />

Figure45. SampleJCLtoDIAGNOSEaVVDS<strong>and</strong>ComparetoaBCS<br />

To determine which VVDSs are connected to a BCS, you can use LISTCAT<br />

LEVEL(SYS1.VVDS). The BCS name needs to be specified in the CATALOG<br />

parameter. Care should be taken because this LISTCAT will show only the volumes<br />

for which a SYS1.VVDS.Vvolser entry exits. There may also be catalog records in<br />

the BCS for data sets which reside on volumes for which no SYS1.VVDS.Vvolser<br />

entry exists in the BCS.<br />

Analyzing Structural Integrity 73


74 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

Another fast <strong>and</strong> easy way to detect duplicate VVRs, orphan VVRs or<br />

uncataloged data sets is to run DFSMSdss logical dump specifying<br />

PARM='TYPRUN=NORUN' on the EXEC statement. This means all filtering for the logical<br />

dump is performed but no data set is processed or moved.<br />

Figure 46 shows sample DFSMSdss logical dump JCL <strong>and</strong> control statements.<br />

//TATERS3 JOB (999,POK),MSGLEVEL=1,NOTIFY=&SYSUID<br />

//DUMP02 EXEC PGM=ADRDSSU,REGION=6000K,PARM='TYPRUN=NORUN'<br />

//SYSPRINT DD SYSOUT=*<br />

//OUTDD DD DUMMY<br />

//SYSIN DD *<br />

DUMP -<br />

DATASET(INCLUDE(**)) -<br />

LOGINDY(SBOX02) -<br />

OUTDDNAME(OUTDD) -<br />

TOL(ENQF)<br />

/*<br />

Figure 46. Sample JCL for DFSMSdss to Detect Duplicate or Orphan VVRs<br />

6.2.3 Repairing Synchronization Errors<br />

Different errors may force you to take different repair actions. Table 6 shows<br />

which AMS comm<strong>and</strong>s need to be performed for different error situations <strong>and</strong><br />

data set types; <strong>and</strong> which functional components (BCS,VVDS,VTOC) are<br />

changed by what actions. Some of these actions can also be done by ISPF/PDF<br />

catalog or uncatalog. For example, delete of a catalog record for a non-VSAM<br />

data set can be done by an ISPF/PDF UNCATALOG comm<strong>and</strong>.<br />

Uncataloged VSAM <strong>and</strong> non-VSAM SMS-managed data sets can also be<br />

detected by ISMF <strong>and</strong> can be deleted by the ISMF DELETE line comm<strong>and</strong>. Under<br />

the covers, an ISMF DELETE line comm<strong>and</strong> issues an AMS DELETE VVR or NVR.


Table 6. Overview of Repair Actions Performed by IDCAMS<br />

Error Situation Data Set Type Action needed BCS VVDS VTOC<br />

VTOC entry<br />

missing<br />

VTOC entry<br />

missing<br />

VTOC entry<br />

missing<br />

VVDS entry<br />

missing<br />

<strong>Catalog</strong> (BCS)<br />

entry missing<br />

<strong>Catalog</strong> (BCS)<br />

entry missing<br />

<strong>Catalog</strong> (BCS)<br />

entry missing<br />

Orphan VVR<br />

or NVR<br />

Duplicate VVR<br />

or NVR<br />

SMS managed<br />

NON-VSAM<br />

Non-SMS<br />

managed<br />

NON-VSAM<br />

DELETE NOSCRATCH a<br />

DELETE NVR b<br />

Recoverorre-allocate<br />

DELETE NOSCRATCH X<br />

VSAM DELETE CLUSTER<br />

NOSCRATCH<br />

DELETE VVR b,d<br />

DEFINE CLUSTER <strong>and</strong><br />

recover<br />

VSAM <strong>and</strong><br />

SMS managed<br />

NON-VSAM<br />

SMS managed<br />

NON-VSAM<br />

NON-SMS-<br />

NON-VSAM<br />

VSAM SMS or<br />

NON-SMS<br />

VSAM or SMS<br />

NON-VSAM<br />

VSAM or SMS<br />

NON-VSAM<br />

DELETE NOSCRATCH<br />

DELETE VVR/NVR c,d<br />

Recoverorre-allocate<br />

DEFINE NONVSAM<br />

RECATALOG b,e<br />

DEFINE NONVSAM X<br />

DEFINE CLUSTER<br />

RECATALOG b,e<br />

DELETE VVR f<br />

DELETE NVR f<br />

RENAME or DELETE the<br />

data set.<br />

DELETE VVR/NVR b,d,f<br />

RENAME Or DEFINE<br />

to old name<br />

a. Removal of BCS is entry is required to do DELETE VVR/NVR.<br />

b. Requires that the catalog pointed to in VVR/NVR is available.<br />

c. This deletes also the VTOC entries.<br />

d. For VSAM this needs to be done for each component by component name.<br />

e. DEFINE RECATLOG can only be done into the catalog pointed to by the VVR/NVR. In<br />

case this is not the right catalog, you can use IDCAMS REPRO MERGECAT afterwards to<br />

move the catalog entry.<br />

f. Print of VVDS will be needed to get the component name.<br />

Duplicate or orphan VVRs or NVRs will be detected by the AMS DIAGNOSE<br />

comm<strong>and</strong>. In some cases you may need to print the VVDS to check for duplicate<br />

or orphan entries. You can use either the AMS or DFSMSdss PRINT comm<strong>and</strong> to<br />

print a VVDS.<br />

Figure 47 shows sample JCL to print a VVDS using the DFSMSdss PRINT<br />

comm<strong>and</strong>.<br />

X<br />

X<br />

X<br />

X<br />

X<br />

X X<br />

X<br />

X<br />

X<br />

X<br />

X<br />

X X<br />

X<br />

X X<br />

X<br />

X<br />

X<br />

X<br />

Analyzing Structural Integrity 75<br />

X<br />

X<br />

X X


76 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

//TATERS3 JOB (999,POK),MSGLEVEL=1,NOTIFY=&SYSUID<br />

//DFDSS EXEC PGM=ADRDSSU<br />

//SYSPRINT DD SYSOUT=*<br />

//SYSPRINT DD SYSOUT=*<br />

//DD1 DD UNIT=3390,DISP=SHR,VOL=SER=SBOX02<br />

//SYSIN DD *<br />

PRINT INDDNAME(DD1) -<br />

DATASET(SYS1.VVDS.VSBOX02) -<br />

TOL(ENQF)<br />

/*<br />

Figure47. SampleJCLtoPrintaVVDSbyDFSMSdss<br />

VSAM data sets <strong>and</strong> non-VSAM SMS-managed data sets with a HLQ of SYS1<br />

can be cataloged in more than one BCS. This can be done by AMS DEFINE<br />

RECATALOG. In this case the VVR/NVR still points to the original catalog. This is<br />

a situation which might be detected by DIAGNOSE but this is not considered a<br />

structural or synchronization error.<br />

6.2.4 Utilities <strong>and</strong> Tools Available for Diagnosis<br />

A variety of different utilities <strong>and</strong> tools are available to diagnose the different<br />

components <strong>and</strong> their relationship to each other. We list some of those utilities<br />

below:<br />

<strong>Catalog</strong><br />

IDCAMS<br />

LISTCAT<br />

EXAMINE<br />

DIAGNOSE<br />

PRINT<br />

DFSMSdss<br />

PRINT<br />

<strong>Catalog</strong> Solution<br />

VVDS<br />

IDCAMS<br />

LISTCAT<br />

DIAGNOSE<br />

PRINT<br />

DFSMSdss<br />

PRINT<br />

<strong>Catalog</strong> Solution<br />

VTOC<br />

IEHLIST<br />

LISTVTOC DUMP|FORMAT


DFSMSdss<br />

PRINT<br />

DEFRAG specify PARM=’TYPRUN=NORUN,TRACE=YES’<br />

ICKDSF<br />

BUILDIX<br />

6.2.5 VSAM Knowledge Database<br />

You may also like to visit the VSAM Knowledge Base, which is an interactive<br />

diagnostic tool. It is a question-<strong>and</strong>-answer driven knowledge data base that<br />

resides on the DFSMS/MVS Technical Support Website under "Technical<br />

Database" at the following URL:<br />

http://knowledge.storage.ibm.com/<br />

6.3 <strong>Catalog</strong> <strong>Sharing</strong> Problems<br />

<strong>Catalog</strong> structural <strong>and</strong> synchronization errors may also occur due to failures in<br />

establishing the proper catalog sharing environment.<br />

6.3.1 Error Symptoms Due to <strong>Sharing</strong> Problems<br />

A typical symptom for a catalog sharing problem is that catalog entries created on<br />

one system cannot be found on another system sharing the same catalog. A<br />

no-record-found condition will be indicated by either of the following messages:<br />

or<br />

IDC3009I ** VSAM CATALOG RETURN CODE IS 8 - REASON CODE IS IGG0CLEG-42<br />

IDC3012I ENTRY entname NOT FOUND<br />

There are two conditions that must both be met to establish the proper catalog<br />

sharing environment:<br />

The catalog must be defined using SHAREOPTIONS(3,4), which is the default<br />

for catalogs.<br />

The catalog must reside on a DASD volume that is defined with the<br />

FEATURE=SHARED option using hardware configuration definition (HCD) on<br />

all sharing systems.<br />

Also, we suggest that you revisit 1.3, “A Review of the SHAREOPTIONS<br />

Parameter” on page 7.<br />

A common user error related to this is that a catalog resides on a DASD volume<br />

that is defined as shared in HCD on one system, but not on the sharing system.<br />

This situation can be temporarily resolved by issuing the comm<strong>and</strong>:<br />

F CATALOG,CLOSE(catalogname)<br />

or, it may be resolved by restarting CAS using the comm<strong>and</strong> on the failing<br />

system:<br />

F CATALOG,RESTART<br />

Analyzing Structural Integrity 77


78 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

However, extreme care should be taken if this situation occurs. If the system<br />

which has seen the no-record-found condition is going to update the catalog,<br />

updates done by the other system may be lost. The result is a corrupted catalog.<br />

6.3.2 Determining If a <strong>Catalog</strong> is Actually Shared<br />

There is a very convenient way to verify that a catalog is shared: You can issue<br />

the following comm<strong>and</strong> on all sharing systems:<br />

F CATALOG,OPEN<br />

The status display, as shown in Figure 49 on page 80, will show you if a catalog is<br />

considered as shared. You need to check the CAS FLAGS for either ’E’, to<br />

indicate ECS mode, or ’R’ to indicate VVDS mode sharing. If neither of the sharing<br />

flags is shown, you can be certain that the two conditions for sharing a catalog<br />

are not met. It may be that on one of the sharing systems the DASD volume is not<br />

defined as shared in HCD. In this case you will see the ’R’ flag on the systems that<br />

meet the conditions, but not on the systems that do not.<br />

The ’E’ flag will only be seen if ECS is active for that catalog, <strong>and</strong> this means that<br />

the conditions for shared catalogs are met on all systems in the sysplex.<br />

Additionally, if you do not see the ’R’ flag on one of the sharing systems, you can<br />

use the DEVSERV QUERY DASD system comm<strong>and</strong> to check the reserve release (RR)<br />

bit in the UCB of this volume. Issue the following comm<strong>and</strong>:<br />

DS QD,devnumber,1,UCB<br />

See Figure 48 for sample output from the DEVSERV QUERY DASD comm<strong>and</strong>. You need<br />

to check for the RR bit in UCB common segment at offset x’11’ bit 2=ON(..1. ....).


IEE459I 14.19.16 DEVSERV QDASD 093<br />

UNIT VOLSER SCUTYPE DEVTYPE CYL SSID SCU-SERIAL DEV-SERIAL EF-CHK<br />

0CC2 SBOX02 3990006 3390A28 2226 000A 0113-90802 0113-T0177 **OK**<br />

UCB AT V00F1B350<br />

008AFF8C0CC20000 0000000000C3C3F2 3030200F00F1B328 41280100E2C2D6E7<br />

F0F2040800000011 ^<br />

UCB PREFIX AT V024E94C8<br />

000C804000000000 000000000001038C 289C009BE00080F8 082088A4F5FFFFFF<br />

0108000000000001<br />

UCB COMMON EXTENSION AT V00F1B328<br />

0000094020AA0000 024E94C800000031 0000000000FCAF54 00F1B2F000000000<br />

**** 1 DEVICE(S) MET THE SELECTION CRITERIA<br />

**** 0 DEVICE(S) FAILED EXTENDED FUNCTION CHECKING<br />

Figure 48. Sample Output of the DS QT,0CC2,1,UCB Comm<strong>and</strong>.<br />

6.4 CAS Problems Due to <strong>Catalog</strong> Structural or Synchronization Errors<br />

As we stated earlier, broken catalogs can influence the CAS, <strong>and</strong> abends or hang<br />

situations may be seen in the CAS. User jobs might also be affected, <strong>and</strong> may<br />

see abends or catalog error messages of the format IDCxxxxx issued.<br />

6.4.1 CAS ABEND or Error Messages<br />

The most important catalog management message to observe is:<br />

IDC3009I VSAM CATALOG RETURN CODE IS rtn - REASON CODE IS IGGOCLaa - rsn<br />

Using the comm<strong>and</strong> MODIFY CATALOG,DUMPON(retcode,rsncode,modid), you can force<br />

the CAS to create a dump whenever a given return code, reason code, <strong>and</strong><br />

module identifier are provided in the IDC3009I message.<br />

For unexpected abends in the CAS, a dump is always created. There are certain<br />

forced (expected) abends in CAS, for example, abend81A during CAS restart, for<br />

which there is no dump created. Using the comm<strong>and</strong> F CATALOG,DUMPON with no<br />

additional options specified will create a dump for expected abends.<br />

6.4.2 CAS Hang or Lockout Situations<br />

If a user address space is waiting for the CAS, <strong>and</strong> CAS does not respond due to<br />

a hang or lockout situation, you can try different MODIFY CATALOG comm<strong>and</strong>s to<br />

attempt to alleviate the situation.<br />

First issue the comm<strong>and</strong> F CATALOG,OPEN which will provide a list of open catalogs<br />

<strong>and</strong> the volser of the allocated DASD as well as information about caching <strong>and</strong><br />

sharing. Figure 49 shows the sample output from this comm<strong>and</strong>.<br />

Analyzing Structural Integrity 79


80 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

F CATALOG,OPEN<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC348I ALLOCATED CATALOGS 687<br />

*CAS***************************************************************<br />

* FLAGS -VOLSER-USER-CATALOG NAME *<br />

* Y-I-R- SBOX09 0001 UCAT.VSBOX09 *<br />

* Y-I-E- SBOX01 0001 UCAT.VSBOX01 *<br />

* Y-I-E- SBOX01 0001 MCAT.SANDBOX.VSBOX01 *<br />

*******************************************************************<br />

* Y/N-ALLOCATED TO CAS, S-SMS, V-VLF, I-ISC, C-CLOSED, D-DELETED, *<br />

* R-SHARED, A-ATL, E-ECS SHARED, K-LOCKED *<br />

*CAS***************************************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

Figure 49. <strong>Catalog</strong> Status Display for Open <strong>Catalog</strong>s<br />

If you suspect that a certain catalog is causing the error, you can issue the<br />

comm<strong>and</strong> F CATALOG,CLOSE(catname) to close the suspected catalog. It will<br />

automatically be reopened at the next request for that catalog.<br />

Thenextstepistoissuethecomm<strong>and</strong>F CATALOG,LIST. A list of catalog tasks <strong>and</strong><br />

their status is provided. Each task has a unique ID.<br />

Figure 50 shows sample output from this comm<strong>and</strong>.<br />

F CATALOG,LIST<br />

IEC351I CATALOG ADDRESS SPACE MODIFY COMMAND ACTIVE<br />

IEC347I LIST CATALOG TASK(S) 827<br />

*CAS****************************************************************<br />

* FLAGS - TASK ADDRESS - JOBNAME / STEPNAME - ELAPSED TIME - ID *<br />

* -W-E-- 00886108 TATERS3L / IDCAMS 00.00.01 01 *<br />

********************************************************************<br />

* O-OLDEST, W-WAIT, A-ABEND, E-ENQ, R-RECALL, L-RLS *<br />

*CAS****************************************************************<br />

IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED<br />

Figure 50. <strong>Catalog</strong> Task <strong>and</strong> Status Display<br />

With the information from the CAS task <strong>and</strong> status display, you might consider<br />

cancelling the job which is holding the E-ENQ. To clear this condition, issue the<br />

comm<strong>and</strong> F CATALOG,END(id), where id is the id of the O-OLDEST task. In most<br />

cases this will solve the hang or lockout situation. In some cases the sequence of<br />

F CATALOG,LIST <strong>and</strong> F CATALOG,END,(id) comm<strong>and</strong>s needs to be repeated until the<br />

situation is resolved.<br />

For diagnostic purposes, <strong>and</strong> certainly before you are going to cancel jobs or<br />

issue comm<strong>and</strong>s to manipulate the CAS, you should take a CAS dump using the<br />

following system comm<strong>and</strong>s <strong>and</strong> dump options:<br />

DUMP COMM=(title)<br />

Rid,JOBNAME=(CATALOG),SDATA=(CSA,LPA,LSQA,SQA,RGN,GRSQ,SWA,TRT,SUM)<br />

Keep in mind that the comm<strong>and</strong> F CATALOG,RESTART is considered as the last resort<br />

before an IPL. The reason for this is that all current catalog requests need to be<br />

ended <strong>and</strong> will have to be resumed after the CAS restart. If a CAS request cannot


e ended because of an outst<strong>and</strong>ing I/O operation, the CAS restart will fail. This<br />

will finally result in an IPL needing to be performed.<br />

For further information, see Managing <strong>Catalog</strong>s, SC26-4914. For a complete <strong>and</strong><br />

up to date corrected description of the MODIFY CATALOG comm<strong>and</strong>s refer to<br />

Appendix B.1, “MODIFY CATALOG Comm<strong>and</strong> Syntax” on page 101.<br />

Analyzing Structural Integrity 81


82 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong>


Appendix A. <strong>Catalog</strong> Search Interface<br />

A.1 CSI Setup<br />

The <strong>Catalog</strong> Search Interface (CSI) is shipped as a component of base<br />

DFSMS/MVS 1.5. As its use is not widespread, we will take this opportunity to<br />

remind you of its availability <strong>and</strong> to point out its advantages over other methods of<br />

obtaining catalog information. The following sections describe:<br />

CSI setup<br />

CSI programming considerations<br />

The <strong>IBM</strong> supplied sample programs<br />

Real world example of CSI usage with sample code<br />

The CSI is a general-use programming interface for obtaining information from<br />

ICF catalogs. It provides great flexibility in specifying the selection criteria for the<br />

data that is to be returned. The CSI may be invoked by assembler programs,<br />

high-level language programs <strong>and</strong> REXX execs. See Managing <strong>Catalog</strong>s,<br />

SC26-4914 for a complete description of the interface.<br />

Much of the information you can obtain from the CSI you could also obtain using<br />

an AMS LISTCAT comm<strong>and</strong>. However, there are some advantages that you may<br />

want to consider when accessing catalog information:<br />

Using a Generic Filter Key. When requesting information from the CSI for<br />

specific catalog entries, you may specify a generic filter key. This key can<br />

contain the following symbols used to filter the entry names:<br />

* A single asterisk to represent one or more characters within a qualifier<br />

** A double asterisk to represent zero or more qualifiers<br />

% A percent sign to represent one alphanumeric or national character<br />

%%... Up to eight characters can be specified in one qualifier<br />

Using the AMS LISTCAT comm<strong>and</strong>, you can request either information for<br />

specific ENTRIES or a LEVEL (entries beginning with the specified name),<br />

where generic names may contain one asterisk to represent one qualifier. For<br />

example, if you wanted to retrieve information about Language Environment<br />

target libraries, you could call the CSI <strong>and</strong> specify a generic filter key of<br />

CEE.**.SCEE*. Using the LISTCAT comm<strong>and</strong> you could only request<br />

information for LEVEL(CEE) <strong>and</strong> then scan AMS’s output matching your<br />

requirements.<br />

Using Selection Criteria Fields. When requesting information from the CSI<br />

for specific catalog fields, you may specify a list of field names. For example, if<br />

you were only interested in the volume <strong>and</strong> the file sequence number for<br />

specific data sets, you could specify the catalog field names VOLSER <strong>and</strong><br />

FILESEQ in the field name list when calling the CSI. Obtaining this information<br />

from AMS would require you to use the AMS LISTCAT ALL comm<strong>and</strong> <strong>and</strong> to<br />

scan the output to retrieve the desired information.<br />

Performance Benefits. Using the CSI generally results in significantly better<br />

performance compared to using AMS LISTCAT, which does a catalog call for<br />

each entry processed. The flexibility in requesting only the information that<br />

© Copyright <strong>IBM</strong> Corp. 1999 83


A.2 CSI Programming Considerations<br />

84 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

you are interested in from the CSI results in additional performance<br />

improvements, since you eliminate the retrieval of information that you will<br />

discard later.<br />

The CSI is distributed as load module IGGCSI00 in SYS1.LINKLIB. It is reentrant<br />

<strong>and</strong> reusable, can be invoked in 24-bit or 31-bit addressing mode, in any<br />

protection key, <strong>and</strong> in either problem or supervisor state.<br />

CSI requires three parameters to process your request:<br />

A 4-byte reason area used to return error or status information<br />

A variable length selection criteria list<br />

A work area used to return the requested catalog data<br />

Reason area: This 4-byte area provides additional information when a CSI<br />

request fails with return code 4 or 8. The reason area contains a 2-byte module<br />

ID, followed by a catalog reason <strong>and</strong> return code.<br />

Selection criteria list: This list is used to specify the generic filter key for the<br />

entries to be obtained, an optional catalog name, a list of requested entry types,<br />

<strong>and</strong> a variable length table of requested catalog field names. Copy code member<br />

IGGCSINA in SYS1.MACLIB provides a mapping for the selection criteria list.<br />

Work Area: This area contains the requested information from the catalog. It can<br />

reside anywhere, <strong>and</strong> can have a size between 1 KB <strong>and</strong> 1 MB. Generally a size<br />

of 64 KB is recommended. The information returned will be in the following<br />

sequence:<br />

Work area information. This contains the total length of the work area, the<br />

minimum length required for one catalog entry <strong>and</strong> one data entry, the length<br />

of the returned catalog data, <strong>and</strong> the number of field names.<br />

<strong>Catalog</strong> information. This contains the catalog name, <strong>and</strong> a return <strong>and</strong><br />

reason code in case of an error processing this catalog. The following<br />

information will be for entries defined in this catalog. If multiple catalogs have<br />

been processed, this will then be followed by the next catalog’s information.<br />

Entry information. This contains the entry type, the entry name, a return <strong>and</strong><br />

reason code in case of an error processing this entry, <strong>and</strong> the length of field<br />

data returned for this entry. The following field information will apply to this<br />

entry, which will then be followed by the next entry information. Entry<br />

information will be provided in alphabetical order.<br />

Field name information. This consists of the total length field, an array of<br />

individual field lengths, <strong>and</strong> the field data itself. All length fields are 2-byte<br />

unsigned numbers. Depending on the fields requested, the returned data may<br />

be of fixed length (such as the expiration date DSEXDT2), of variable length<br />

(such as the SMS storage class STORCLAS), or may be an array of fields<br />

(such as the volume serial number VOLSER). Field information is provided in<br />

the sequence of the field name list specified in the selection criteria.<br />

To retrieve the information from the work area you will probably need to code a<br />

nested loop processing the data first by catalog level, next by entry level, <strong>and</strong><br />

finally by field level. Depending on the number of entries matching your search


A.3 <strong>IBM</strong> Supplied Sample Programs<br />

criteria, the results may not fit into the work area. In this case, CSI will set fields in<br />

the selection criteria list, CSIRESUM <strong>and</strong> CSIRESNM, that allow you to resume<br />

the information retrieval with subsequent calls to CSI.<br />

<strong>IBM</strong> provides three sample assembler programs <strong>and</strong> one REXX exec in<br />

SYS1.SAMPLIB. Here we provide a short summary of their functions. Refer to<br />

Managing <strong>Catalog</strong>s, SC26-4914 for a complete description of these sample<br />

programs.<br />

IGGCSILK produces output similar to that of an AMS LISTCAT CAT(catname)<br />

comm<strong>and</strong>. The input to this program is the catalog name specified left-justified<br />

on an 80-byte SYSIN record.<br />

IGGCSIVG identifies unused space at the end of VSAM data sets defined in a<br />

given catalog. This is calculated as the difference of the high-allocated <strong>and</strong> the<br />

high-used relative byte address (HARBA-HURBA). Again, the catalog name is<br />

specified left-justified on an 80-byte SYSIN record.<br />

IGGCSIVS produces a list of data set names defined in a given catalog that<br />

reside on a specific volume. Such a list might be helpful in a recovery situation<br />

affecting that volume. The volume serial number is specified in columns 1 to 6<br />

of an 80-byte SYSIN record, <strong>and</strong> the catalog name is specified starting in<br />

column 7.<br />

IGGCSIRX is a REXX exec that produces a list of data set names matching a<br />

generic filter key. When you call it from a TSO/E session, it will prompt you for<br />

the filter key, <strong>and</strong> return matching data set names, their type, <strong>and</strong> volume<br />

definition.<br />

To get an idea of the performance benefits of using CSI, we assembled<br />

IGGCSILK <strong>and</strong> ran it in comparison with an AMS LISTCAT to list all entry names in<br />

our s<strong>and</strong>box master catalog. Table 7 shows the times used to list the 4505 entries<br />

in the catalog.<br />

Being curious about the reasons for the differences, we then ran Generalized<br />

Trace Facility (GTF) traces to count the number of ENQ’s/RESERVE’s <strong>and</strong> DEQ’s<br />

for AMS <strong>and</strong> CSI. From these figures, also included in Table 7, we can see that<br />

the numbers of ENQs/RESERVEs <strong>and</strong> DEQs for AMS are multiples of the number<br />

of entries in the catalog. In the case of CSI, the numbers are multiples of the<br />

number of calls that have to be made (including resume calls).<br />

To determine the effect of ECS on these performance figures, we finally removed<br />

our catalog from ECS <strong>and</strong> ran the jobs again. The results show that the numbers<br />

of ENQs/RESERVEs <strong>and</strong> DEQs are reduced by 29% (AMS) <strong>and</strong> 33% (CSI) when<br />

using ECS compared to VVDS mode sharing.<br />

As these figures cannot be representative or guaranteed, we suggest that you<br />

compare these jobs on your system, if you run LISTCATs on a regular basis.<br />

<strong>Catalog</strong>SearchInterface 85


86 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

Table 7. Sample Timings Used by IDCAMS LISTCAT <strong>and</strong> IGGCSILC<br />

Timings AMS w/ ECS CSI w/ ECS AMS wo/ ECS CSI wo/ ECS<br />

Elapsed Time 11 sec 1 sec 24 sec 1 sec<br />

TCB Time 3.07 sec 0.04 sec 3.14 sec 0.04 sec<br />

SRB Time 0.06 sec 0.01 sec 0.06 sec 0.01 sec<br />

ENQ’s/RESERVEs 9010 18 13515 27<br />

DEQ’s 13515 18 18020 27


A.4 Real World Example of CSI Implementation<br />

The following example of using CSI is a module from Software AG’s product<br />

Entire System Server. This product is designed to make information from the<br />

operating system environment available to Natural programs in the same way<br />

that data is retrieved from Adabas or other databases. Unlike normal database<br />

requests that will select rows from tables, information requested from Entire<br />

System Server is obtained at execution time <strong>and</strong> returned to the calling program.<br />

You can request information from Entire System Server by specifying field names<br />

from views in a Natural FIND or PROCESS statement. Views have been<br />

predefined for various types of objects, one of which is the CATALOG view, <strong>and</strong><br />

the requested information will be provided by the CATALOG view processor.<br />

In earlier releases, two methods have been used to retrieve selected catalog<br />

information:<br />

Invoking Access Method Services (AMS)<br />

Using the TSO/E <strong>Catalog</strong> Information Routine (IKJEHCIR)<br />

When CSI became available with DFSMS/MVS 1.4, the CATALOG view<br />

processor was rewritten to utilize some of the advantages of CSI compared to the<br />

previously used methods. These enhancements include:<br />

Using a Generic Filter Key. This provides more flexibility than requesting<br />

data for ENTRIES or LEVEL from IDCAMS, or using entry codes X’04’<br />

(volume information for DSN) or X’06’ (volume information for DSN’s with<br />

same high level qualifier) with IKJEHCIR.<br />

Requesting Only Specific Fields. This is far more efficient than requesting<br />

all information from IDCAMS <strong>and</strong> then parsing the output for the information<br />

needed.<br />

Variety of Field Names Available. More fields may be easily included in the<br />

information request. IKJEHCIR retrieves only volume information; additional<br />

data has to be obtained using additional macros.<br />

No Limits on the Number of Entries. Due to the resume function available<br />

with the CSI, the information returned is not limited by the size of the work<br />

area. With IKJEHCIR the data returned is restricted by the maximum size of<br />

64 KB for the user work area. Even AMS LISTCAT has a restriction on the<br />

number of entries due to the amount of available storage below the line (24-bit<br />

addressing).<br />

Work Area Above 16 MB. This may relieve some storage constraints on a<br />

heavily used system. The user work area passed to IKJEHCIR has to be<br />

below 16 MB.<br />

Improved Performance. Retrieving catalog information from CSI is<br />

significantly faster than from AMS or IKJEHCIR.<br />

Additional considerations have to be taken when requesting volume information<br />

for data sets from the catalog(s). When non-VSAM data sets are defined using<br />

indirect volume serial forms, CSI (as well as AMS) will return the unresolved<br />

definition value, that is, either a system symbol or ’******’ for the system<br />

residence volume. In these cases, also, the device type returned will be zero.<br />

<strong>Catalog</strong>SearchInterface 87


88 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

In this sample program, the system symbol is resolved to the real volume serial<br />

number (see the call to ASASYMBM on page 93), <strong>and</strong> a UCB copy is obtained to<br />

get its device type (UCBSCAN COPY macro on page 93). Later, the device type<br />

is translated into a unit name (EDTINFO macro on page 96) that will be more<br />

meaningful to the user.<br />

***********************************************************************<br />

* *<br />

* MAINTENANCE: *<br />

* *<br />

* Date UID Description *<br />

* ------------------------------------------------------------------- *<br />

* 06.11.1998 STL Rewritten to use <strong>Catalog</strong> Search Interface *<br />

* -------------> npr 221 release End of filter field<br />

MVI WKTRTAB,C’-’ Initialize function ...<br />

MVC WKTRTAB+1(255),WKTRTAB ... bytes table for TRT<br />

XC WKTRTAB+240(10),WKTRTAB+240 Clear 0 - 9<br />

MVC WKTRTAB+C’A’(9),WKTRTAB+240 Clear A - I<br />

MVC WKTRTAB+C’J’(9),WKTRTAB+240 Clear J - R<br />

MVC WKTRTAB+C’S’(8),WKTRTAB+240 Clear S - Z<br />

MVI WKTRTAB+C’.’,0 Clear period<br />

MVC WKTRTAB+C’$’(2),WKTRTAB+240 Clear $ - *<br />

MVI WKTRTAB+C’-’,0 Clear hyphen<br />

MVI WKTRTAB+C’%’,0 Clear percent


MVC WKTRTAB+C’#’(2),WKTRTAB+240 Clear # - @<br />

C_SPACE EQU *+1,1,C’C’<br />

MVI WKTRTAB+C’ ’,C’ ’ Set space<br />

C_USCORE EQU *+1,1,C’C’<br />

MVI WKTRTAB+C’_’,C’_’ Set underscore<br />

TRTDSN DS 0H<br />

TRT DSNAME,WKTRTAB Check for valid characters<br />

BZ DSNOK No strange characters<br />

CLM R2,1,C_SPACE Space found ?<br />

BE DSNOK OK as well<br />

CLM R2,1,C_USCORE Underscore found ?<br />

BNE INVDSN No - some strange character<br />

MVI 0(R1),C’%’ Yes - replace by percent<br />

B TRTDSN Repeat<br />

SPACE<br />

DSNOK DS 0H<br />

CLC PREFIX(2),C_NO PREFIX=NO specified ?<br />

BE PREFIXOK Yes - go to process<br />

LA R0,DSNAME+44-4 R0 -> end of DSNAME - 4<br />

CR R1,R0 How much space for asterisks ?<br />

*.STL01. BL TRISTARS Enough for ’.*.**’<br />

NOP TRISTARS Enough for ’.*.**’ .STL01.<br />

*.STL01. BE TWOSTARS Enough for ’.**’<br />

NOP TWOSTARS Enough for ’.**’ .STL01.<br />

LA R0,DSNAME+44-2 R0 -> end of DSNAME - 2<br />

CR R1,R0 How much space for asterisks ?<br />

BL TWOSTARS Enough for ’.**’<br />

*.STL01. BH PREFIXOK Not enough space for any *’s<br />

B PREFIXOK Not enough space for any.STL01.<br />

MVC 0(2,R1),C_SUFFIX Just enough space for ’.*’<br />

B PREFIXOK Continue<br />

TWOSTARS DS 0H<br />

MVC 0(3,R1),C_SUFFIX+2 Enough space for ’.**’<br />

B PREFIXOK Continue<br />

TRISTARS DS 0H<br />

BCTR R1,0 R1 -> last character of DSNAME<br />

CLI 0(R1),C’*’ is there an asterisk already ?<br />

LA R1,1(,R1) . (restore suffix position)<br />

BE TWOSTARS yes - suffix with only ’.**’<br />

MVC 0(5,R1),C_SUFFIX Enough space for ’.*.**’<br />

SPACE<br />

PREFIXOK DS 0H<br />

MVI WKS1CAT,C’ ’ Set default search all cat’s<br />

CLC OPTION,C_LONG OPTION=LONG specified ?<br />

BE OPTIONOK Yes - continue<br />

CLI OPTION,0 OPTION not specified ?<br />

BE OPTIONOK Yes - continue<br />

CLC OPTION,C_UCAT OPTION=USERCAT specified ?<br />

BNE INVOPT No - invalid specification<br />

MVI WKS1CAT,C’Y’ Indicate search this cat only<br />

SPACE<br />

OPTIONOK DS 0H<br />

CLI USERCAT,0 USERCAT not specified ?<br />

BE NOUCAT Yes - set field to blanks<br />

MVI WKTRTAB+C’*’,C’-’ Asterisk invalid in catalogname<br />

MVI WKTRTAB+C’%’,C’-’ Percent invalid in catalogname<br />

MVI WKTRTAB+C’_’,C’-’ Uscore invalid in catalogname<br />

TRT USERCAT,WKTRTAB Check for valid characters<br />

<strong>Catalog</strong>SearchInterface 89


90 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

BZ INVUCAT No strange characters<br />

CLM R2,1,C_SPACE Space found ?<br />

BNE INVUCAT No - some strange character<br />

SPACE<br />

NOUCAT DS 0H<br />

MVI USERCAT,C’ ’ Set USERCAT field ...<br />

MVC USERCAT+1(43),USERCAT ... to blanks<br />

SPACE<br />

UCATOK DS 0H<br />

***********************************************************************<br />

* *<br />

* 2. getmain buffer for CSI work area *<br />

* use SUBPOOL 8 for view 8 *<br />

* build selection criteria for CSI *<br />

* *<br />

***********************************************************************<br />

LA R15,WKCSIRSN R15 -> CSI reason area<br />

ST R15,WKCSIPR1 set as 1st parameter address<br />

MVC CSIFILTK,DSNAME set generic filter key<br />

MVC CSICATNM,USERCAT set catalog name<br />

MVI CSIRESNM,C’ ’ clear resume name ...<br />

MVC CSIRESNM+1(44+16+1),CSIRESNM ... <strong>and</strong> types & options<br />

MVC CSIS1CAT,WKS1CAT set catalog search option<br />

MVC CSIFLDNM,=CL8’DEVTYP’ set 1st field name<br />

MVC CSIFLDN2,=CL8’VOLSER’ set 2nd field name<br />

MVC CSIFLDN3,=CL8’FILESEQ’ set 3rd field name<br />

LA R0,3 R0 := number of field names<br />

STH R0,CSINUMEN set number of field entries<br />

LA R15,WKCSISEL R15 -> CSI selection criteria<br />

ST R15,WKCSIPR2 set as 1st parameter address<br />

STORAGE OBTAIN,LENGTH=32760, Obtain storage for CSI ... *<br />

SP=8,LOC=ANY,COND=YES ... work area<br />

LTR R15,R15 Request successful ?<br />

BNZ STGERR No - return error code<br />

SPACE<br />

LR R11,R1 Yes - load into R11<br />

ST R0,0(,R11) set work area length<br />

ST R11,WKCSIPR3 set as 3rd parameter address<br />

OI WKCSIPR3,128 indicate last parameter<br />

ST R11,WKCURPOS+4 save address in position<br />

SPACE<br />

***********************************************************************<br />

* *<br />

* 3. call catalog search interface (available since DFSMS/MVS V1R4) *<br />

* (see DFSMS/MVS Managing <strong>Catalog</strong>s, Appendix D, CSI User’s Guide) *<br />

* *<br />

***********************************************************************<br />

CALLCSI DS 0H<br />

LA R1,WKCSIPR1 R1 -> parameter address list<br />

*** L R15,=V(IGGCSI00) R15 -> <strong>Catalog</strong> search interface<br />

*** BALR R14,R15 call CSI<br />

LINK EP=IGGCSI00 call catalog search interface<br />

LTR R15,R15 <strong>Catalog</strong> search successful ?<br />

BNZ CSIERR No - return error code<br />

SPACE<br />

USING CSIRWORK,R11<br />

L R9,CSIUSDLN R9 := used work area length<br />

ALR R9,R11 R9 -> end of used work area


LA R10,WORKEND R10 -> 1st entry<br />

USING CSIENTRY,R10<br />

MVC USERCAT,CSICNAME move (user) catalog name<br />

ST R10,WKCURPOS save current (initial) position<br />

TM CSICFLG,CSINOENT any entries found ?<br />

BO CATENTRY no - go to get next entry<br />

SPACE 3<br />

GETIT DS 0H +<br />

CLI OPENOK,1 + Did S1/S4 preceed ?<br />

BNE INVFUNC + No, invalid function sequence<br />

ICM R15,3,WKERR + Any previous error ?<br />

BNZ HANDERR + Yes, h<strong>and</strong>le error<br />

SPACE<br />

GETNEXT DS 0H<br />

LM R10,R11,WKCURPOS restore current position<br />

L R9,CSIUSDLN R9 := used work area length<br />

ALR R9,R11 R9 -> end of used work area<br />

CR R10,R9 current entry within workarea ?<br />

BL TESTTYPE yes - continue<br />

CLI CSIRESUM,C’Y’ more catalog entries ?<br />

BE CALLCSI Yes - call CSI with resume<br />

B EODAD No - signal end of data<br />

SPACE<br />

TESTTYPE DS 0H<br />

CLI CSIETYPE,C’0’ Is entry for a catalog ?<br />

BE CATENTRY Yes - go to process<br />

MVC DSNAME,CSIENAME No - copy entry name<br />

LA R15,ENTYPTAB R15 -> entry type table<br />

LA R0,ENTYPLEN R0 := size of one entry<br />

LA R1,ENTYPEND-1 R1 -> end of table<br />

***********************************************************************<br />

* *<br />

* 4. copy retrieved information into dynamic work area *<br />

* *<br />

***********************************************************************<br />

FINDTYPE DS 0H<br />

CLC CSIETYPE,0(R15) entry type found ?<br />

BE COPYTYPE yes - go to copy type<br />

BXLE R15,R0,FINDTYPE no - repeat for next entry<br />

MVC TYPE,=C’-N/A-( )’ end of table, type not found<br />

MVC TYPE+6(1),CSIETYPE set entry type from CSI<br />

B TYPEDONE continue<br />

COPYTYPE DS 0H<br />

MVC TYPE,1(R15) copy type from table entry<br />

SPACE<br />

TYPEDONE DS 0H<br />

TM CSIEFLAG,CSIENTER Error indication set ?<br />

BZ COPYINFO No - go to copy info fields<br />

MVI DSNAME+34,C’-’ Yes - insert hyphen into DSN<br />

MVC DSNAME+35(2),CSIERETM insert module ID<br />

MVI DSNAME+37,C’-’ insert hyphen<br />

MVC WKDOUB+6(1),CSIERETR prepare reason code for unpack<br />

MVI WKDOUB+7,6 append packed hyphen<br />

UNPK DSNAME+38(3),WKDOUB unpack reason code<br />

TR DSNAME+38(2),HEXTRTAB translate hex digits<br />

MVC WKDOUB+6(1),CSIERETC prepare return code for unpack<br />

UNPK DSNAME+41(3),WKDOUB unpack reason code<br />

TR DSNAME+41(2),HEXTRTAB translate hex digits<br />

<strong>Catalog</strong>SearchInterface 91


92 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

LA R10,CSIEDATA R10 -> next entry<br />

B INFODONE continue<br />

SPACE<br />

COPYINFO DS 0H<br />

LA R7,CSILENFD R7 -> 1st length field<br />

LH R8,CSINUMFD R8 := number of field names+1<br />

BCTR R8,0 R8 := number of field names<br />

SLL R8,1 R8 := length of field names<br />

LA R8,0(R8,R7) R8 -> 1st field data<br />

ICM R15,3,0(R7) any data for devtype ?<br />

BZ NODEVTYP no - continue<br />

MVC DEVTYPE,0(R8) copy devtype<br />

B COPYVOLS continue<br />

NODEVTYP DS 0H<br />

XC DEVTYPE,DEVTYPE clear devtype field<br />

SPACE<br />

COPYVOLS DS 0H<br />

AH R8,0(,R7) R8 -> 2nd field data<br />

LA R7,2(,R7) R7 -> 2nd field length<br />

LH R15,0(,R7) R15 := volser field length<br />

SLR R14,R14 clear R14<br />

LA R1,6 R1 := one volser’s length<br />

DR R14,R1 R15 := number of volumes<br />

CVD R15,WKDOUB convert to decimal<br />

ZAP NUMVOLS,WKDOUB set number of volumes<br />

ICM R15,7,WKCURVOL+4+1 multi-volume dataset ?<br />

BNZ CONTVOLS yes - continue to move volser<br />

LH R15,0(,R7) R15 := volser field length<br />

LR R14,R8 R14 -> source field for MVCL<br />

B MVCLVOLS continue<br />

CONTVOLS DS 0H<br />

L R14,WKCURVOL R14 -> source data for MVCL<br />

MVCLVOLS DS 0H<br />

ICM R15,8,C_SPACE insert padding byte for MVCL<br />

LA R0,VOLSER R0 -> destination field<br />

STM R14,R15,WKLSTVOL save this volume(s) position<br />

MVCL R0,R14 move one volume serial number<br />

STM R14,R15,WKCURVOL save next volume(s) position<br />

SPACE<br />

CLC VOLSER,C_SYSRES SYSRES volume ?<br />

BNE TESTSYMB no - continue<br />

L R15,CVTPTR R15 -> CVT<br />

L R15,CVTSYSAD-CVT(,R15) R15 -> SYSRES UCB<br />

MVC VOLSER,UCBVOLI-UCBCMSEG(R15) move real volser<br />

MVC DEVTYPE,UCBTYP-UCBCMSEG(R15) move device type<br />

SPACE<br />

***********************************************************************<br />

* *<br />

* 5. eventually substitute system symbol with real volser *<br />

* *<br />

***********************************************************************<br />

TESTSYMB DS 0H<br />

CLI VOLSER,C’&&’ system symbol in volser ?<br />

BNE COPYFSEQ no - continue<br />

LA R15,WKSYMTBL R15 -> internal symbol table<br />

LA R0,WKSYMTBN R0 := number of entries<br />

COMPSYMB DS 0H<br />

CLC VOLSER,0(R15) symbol found ?


BE COPYSYMB yes - go to copy substitution<br />

LA R15,16(,R15) R15 -> next table entry<br />

BCT R0,COMPSYMB repeat for next entry<br />

SPACE<br />

MVC WKPATTRN,VOLSER yes - move pattern for ASASYMBM<br />

XC WKSYMBP,WKSYMBP clear ASASYMBM parameter area<br />

USING SYMBP,WKSYMBP<br />

LA R15,WKPATTRN R15 -> pattern for ASASYMBM<br />

ST R15,SYMBPPATTERN@ Save in SYMBP area<br />

LA R15,6 R15 := length of pattern<br />

ST R15,SYMBPPATTERNLENGTH Save in SYMBP area<br />

ST R15,WKTARGLN set target length<br />

LA R15,WKTARGET R15 -> target for ASASYMBM<br />

ST R15,SYMBPTARGET@ Save in SYMBP area<br />

LA R15,WKTARGLN R15 -> target length field<br />

ST R15,SYMBPTARGETLENGTH@ Save in SYMBP area<br />

LA R15,WKSYMBRC R15 -> return code field<br />

ST R15,SYMBPRETURNCODE@ Save in SYMBP area<br />

LINK EP=ASASYMBM,MF=(E,WKSYMBP) call symbol substitution<br />

ICM R15,15,WKSYMBRC ASASYMBM request successful ?<br />

BNZ SYMBERR no - return error code<br />

SPACE<br />

MVC VOLSER,WKTARGET move substituted volser<br />

SPACE<br />

UCBSCAN COPY,WORKAREA=WKUCBSWA, get a copy of the UCB ... *<br />

UCBAREA=WKUCBCPY,VOLSER=VOLSER, ... for this volser *<br />

MF=(E,WKUCBSCN,COMPLETE)<br />

LTR R15,R15 UCBSCAN successful ?<br />

BNZ UCBSERR no - return error code<br />

SPACE<br />

MVC DEVTYPE,UCBTYP-UCBCMSEG+WKUCBCPY move device type<br />

SPACE<br />

LA R15,WKSYMTBL R15 -> internal symbol table<br />

LA R0,WKSYMTBN R0 := number of entries<br />

TESTISTE DS 0H<br />

CLI 0(R15),C’&&’ entry already filled ?<br />

BNE INSRTSYM no - go to insert symbol<br />

LA R15,16(,R15) R15 -> next table entry<br />

BCT R0,TESTISTE repeat for next entry<br />

B COPYFSEQ table full - forget about it<br />

SPACE<br />

INSRTSYM DS 0H<br />

MVC 0(6,R15),WKPATTRN insert symbol into table<br />

MVC 6(6,R15),WKTARGET insert substitution into table<br />

MVC 12(4,R15),UCBTYP-UCBCMSEG+WKUCBCPY move device type<br />

SPACE<br />

COPYSYMB DS 0H<br />

MVC VOLSER,6(R15) move substituted volser<br />

MVC DEVTYPE,12(R15) move corresponding device type<br />

SPACE<br />

COPYFSEQ DS 0H<br />

AH R8,0(,R7) R8 -> 3rd field data<br />

LA R7,2(,R7) R7 -> 3rd field length<br />

ICM R0,3,0(R7) any data for fileseq ?<br />

BZ NOFILSEQ no - continue<br />

LH R0,0(,R8) R0 := file sequence number<br />

CVD R0,WKDOUB convert to decimal<br />

ZAP VOLSEQ,WKDOUB set volume sequence number<br />

<strong>Catalog</strong>SearchInterface 93


94 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

B COPYDONE continue<br />

NOFILSEQ DS 0H<br />

ZAP VOLSEQ,=P’0’ set volume sequence number zero<br />

SPACE<br />

COPYDONE DS 0H<br />

ICM R15,7,WKCURVOL+4+1 more volumes left to be moved ?<br />

BNZ INFODONE yes - process same entry next<br />

SPACE<br />

ST R10,WKLSTPOS save this entry’s position<br />

LH R15,CSITOTLN R15 := total length of data<br />

LA R10,CSIEDATA(R15) R10 -> next entry<br />

SPACE<br />

INFODONE DS 0H<br />

ST R10,WKCURPOS save current position<br />

SPACE<br />

***********************************************************************<br />

* *<br />

* 6. call search-buffer analyze routine *<br />

* *<br />

***********************************************************************<br />

- - - - - - - - - - - - - - - - 8 Line(s) not Displayed<br />

* COMPARISONS SUCCEEDED<br />

***********************************************************************<br />

* *<br />

* 7. call record-buffer build routine *<br />

* *<br />

***********************************************************************<br />

CATFLDS DS 0H +<br />

- - - - - - - - - - - - - - - - 5 Line(s) not Displayed<br />

MVC WKCURPOS,WKLSTPOS restore current position<br />

MVC WKCURVOL,WKLSTVOL restore current volume<br />

- - - - - - - - - - - - - - - - 2 Line(s) not Displayed<br />

CATENTRY DS 0H<br />

MVC USERCAT,CSIENAME move (user) catalog name<br />

LA R10,CSILENFD R10 -> next entry<br />

ST R10,WKCURPOS save current position<br />

B GETNEXT go to get next (non-cat) entry<br />

*<br />

EJECT<br />

*<br />

CLOSE DS 0H + TERMINATE FUNCTION<br />

ICM R11,15,WKCURPOS+4 R11 -> CSI work area (if obt’d)<br />

BZ FREEWA no - free dynamic work area<br />

STORAGE RELEASE,LENGTH=32760, Release storage for CSI ... *<br />

ADDR=(R11),SP=8 - COND=YES ... work area<br />

LTR R15,R15 Request successful ?<br />

BNZ STGERR - S378 - No - return error code<br />

B FREEWA go to free dynamic work area<br />

- - - - - - - - - - - - - - - - 20 Line(s) not Displayed<br />

SPACE 3<br />

NOTFOUND DS 0H<br />

MVC WKERRT,ERRNTFT move not found error text<br />

LA R15,ERRNTF R15 := not found error code<br />

B HANDERR go to h<strong>and</strong>le error<br />

SPACE 3<br />

INVDSN DS 0H<br />

MVC WKERRT,ERRDSNT move DSN error text<br />

LA R15,ERRDSN R15 := DSN error code


B HANDERR go to h<strong>and</strong>le error<br />

SPACE 3<br />

INVOPT DS 0H<br />

MVC WKERRT,ERROPTT move option error text<br />

LA R15,ERROPT R15 := option error code<br />

B HANDERR go to h<strong>and</strong>le error<br />

SPACE 3<br />

INVUCAT DS 0H<br />

MVC WKERRT,ERRUCAT move catalog error text<br />

LA R15,ERRUCA R15 := UCAT error code<br />

B HANDERR go to h<strong>and</strong>le error<br />

SPACE 3<br />

STGERR DS 0H<br />

MVC WKERRT,ERRSTGT move storage error text<br />

LA R15,ERRSTG R15 := Stg Err return code<br />

B HANDERR go to h<strong>and</strong>le error<br />

SPACE 3<br />

CSIERR DS 0H<br />

CLI WKCSIRSN+3,122 RC 122 (’invalid filter key’) ?<br />

BE INVDSN yes - return syntax error<br />

MVC WKERRT,ERRCSIT move CSI error text<br />

MVC WKERRT+27(2),WKCSIRSN insert module ID<br />

MVC WKDOUB+6(1),WKCSIRSN+2 prepare reason code for UNPK<br />

MVI WKDOUB+7,167 append packed colon<br />

UNPK WKERRT+38(3),WKDOUB unpack CSI reason code<br />

TR WKERRT+38(2),HEXTRTAB translate hex digits<br />

MVC WKDOUB+6(1),WKCSIRSN+3 prepare return code for UNPK<br />

MVI WKDOUB+7,167 append packed colon<br />

UNPK WKERRT+45(3),WKDOUB unpack CSI return code<br />

TR WKERRT+45(2),HEXTRTAB translate hex digits<br />

LA R15,ERRCSI R15 := CSI fail return code<br />

B HANDERR go to h<strong>and</strong>le error<br />

SPACE 3<br />

SYMBERR DS 0H<br />

MVC WKERRT,ERRSYMT move symbol subst. error text<br />

MVC WKERRT+28(6),WKPATTRN insert symbol<br />

MVC WKDOUB+6(1),WKSYMBRC+3 prepare return code for UNPK<br />

MVI WKDOUB+7,167 append packed colon<br />

UNPK WKERRT+39(3),WKDOUB unpack SYMB return code<br />

TR WKERRT+39(2),HEXTRTAB translate hex digits<br />

LA R15,ERRSYM R15 := SYMB fail return code<br />

B HANDERR go to h<strong>and</strong>le error<br />

SPACE 3<br />

UCBSERR DS 0H<br />

MVC WKERRT,ERRUCBT move UCBSCAN error text<br />

MVC WKERRT+27(6),WKTARGET insert volume<br />

STC R15,WKDOUB+6 prepare return code for UNPK<br />

MVI WKDOUB+7,167 append packed colon<br />

UNPK WKERRT+38(3),WKDOUB unpack SYMB return code<br />

TR WKERRT+38(2),HEXTRTAB translate hex digits<br />

LA R15,ERRUCB R15 := UCBSCAN fail return code<br />

B HANDERR go to h<strong>and</strong>le error<br />

SPACE 3<br />

HANDERR DS 0H + HANDLE ERROR CONDITION<br />

- - - - - - - - - - - - - - - - 34 Line(s) not Displayed<br />

**** FIELD ROUTINES FOR VIEW 08 *******<br />

- - - - - - - - - - - - - - - - 7 Line(s) not Displayed<br />

*<br />

<strong>Catalog</strong>SearchInterface 95


96 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

VIEW08A1 DS 0H + DSNAME<br />

LA R1,DSNAME + POINT TO DSNAME<br />

BR R14 + RETURN<br />

*<br />

VIEW08A2 DS 0H + DEVICE-CODE<br />

LA R1,DEVTYPE + POINT TO DEVICE TYPE<br />

BR R14 + RETURN<br />

*<br />

VIEW08A3 DS 0H + VOLSER<br />

LA R1,VOLSER + POINT TO VOLSER<br />

BR R14 + RETURN<br />

*<br />

VIEW08A4 DS 0H + VOLUME SEQUENCE<br />

LA R1,VOLSEQ + GET VOL SEQUENCE<br />

BR R14 + RETURN<br />

*<br />

VIEW08A5 DS 0H + NUMBER-OF-VOLUMES<br />

LA R1,NUMVOLS + POINT TO VOL COUNT<br />

BR R14 + RETURN<br />

*<br />

VIEW08A6 DS 0H + SERIES<br />

EDTINFO RTNUNIT,DEVTYPE=DEVTYPE, return unitname for ... *<br />

OUTUNIT=UNITNAME,MF=(E,WKEDTINF) ... this device type<br />

LA R1,UNITNAME + POINT TO UNITNAME<br />

BR R14 + RETURN<br />

*<br />

VIEW08A7 DS 0H + CLASS<br />

TM DEVTYPE+2,X’20’ direct access device ?<br />

BZ NOTDASD no - try next class<br />

MVC DEVCLASS,=C’DASD’ yes - set class DASD<br />

B CLASDONE continue<br />

NOTDASD DS 0H<br />

TM DEVTYPE+2,X’80’ tape device ?<br />

BZ NOTTAPE no - try next class<br />

MVC DEVCLASS,=C’TAPE’ yes - set class TAPE<br />

B CLASDONE continue<br />

NOTTAPE DS 0H<br />

MVC DEVCLASS,=C’-NA-’ hardly believable<br />

CLASDONE DS 0H<br />

LA R1,DEVCLASS + POINT TO DEVICE CLASS<br />

BR R14 + RETURN<br />

*<br />

VIEW08A8 DS 0H + TYPE<br />

LA R1,TYPE + POINT TO FILE TYPE<br />

BR R14 + RETURN<br />

*<br />

VIEW08AB DS 0H + PREFIX<br />

LA R1,PREFIX + POINT TO YES³NO<br />

BR R14 + RETURN<br />

*<br />

VIEW08AC DS 0H + USER-CATALOG<br />

LA R1,USERCAT + POINT TO CATALOG NAME<br />

BR R14 + RETURN<br />

*<br />

VIEW08AD DS 0H + OPTION<br />

LA R1,OPTION + POINT TO OPTION<br />

BR R14 + RETURN<br />

- - - - - - - - - - - - - - - - 40 Line(s) not Displayed


SPACE 3<br />

ENTYPTAB DC C’A’,CL8’NONVSAM ’ Table of entry types<br />

ENTYPLEN EQU *-ENTYPTAB size of one entry<br />

DC C’B’,CL8’GDG ’ .<br />

DC C’C’,CL8’CLUSTER ’ .<br />

DC C’D’,CL8’DATA ’ .<br />

DC C’G’,CL8’AIX ’ .<br />

DC C’H’,CL8’GDS ’ .<br />

DC C’I’,CL8’INDEX ’ .<br />

DC C’R’,CL8’PATH ’ .<br />

DC C’U’,CL8’USERCAT ’ .<br />

DC C’X’,CL8’ALIAS ’ .<br />

ENTYPEND EQU * end of table<br />

HEXTRTAB EQU *-240 Translate table for hex digits<br />

C_029 DC C’0123456789’ Digits 0 to 9<br />

C_A2I DC C’ABCDEFGHI’ Char’s A to I<br />

C_J2R DC C’JKLMNOPQR’ Char’s J to R<br />

C_NO EQU C_J2R+4,2,C’C’ C’NO’<br />

C_S2Z DC C’STUVWXYZ’ Char’s S to Z<br />

C_SUFFIX DC C’.*.**’ Suffix for DSNAME<br />

DC C’****’ more asterisks<br />

C_SYSRES EQU *-6,6,C’C’ SYSRES volume<br />

C_LONG DC CL8’LONG ’ Keyword OPTION value<br />

C_UCAT DC CL8’USERCAT ’ Keyword OPTION value<br />

C_SPACES DC CL8’ ’ Spaces<br />

* * * ----+----1----+----2----+----3----+----4----+----5<br />

ERRNTF EQU 562<br />

ERRNTFT DC CL50’<strong>Catalog</strong> entry not found. ’<br />

ERRDSN EQU 565<br />

ERRDSNT DC CL50’Syntax error in data set name. ’<br />

ERRUCA EQU 566<br />

ERRUCAT DC CL50’Syntax error in catalog name. ’<br />

ERROPT EQU 567<br />

ERROPTT DC CL50’Invalid OPTION, specify LONG or USERCAT. ’<br />

ERRCSI EQU 787<br />

ERRCSIT DC CL50’CSI request failed, Module:..:,Reason:..:,RC:..: ’<br />

ERRSTG EQU 786<br />

ERRSTGT DC CL50’Unable to obtain/release storage for CSI work area’<br />

ERRSYM EQU 788<br />

ERRSYMT DC CL50’Unable to substitute symbol:......:,RC:..: ’<br />

ERRUCB EQU 789<br />

ERRUCBT DC CL50’Unable to get UCB copy for:......:,RC:..: ’<br />

LTORG<br />

EJECT<br />

COPY VIEWWK WORK AREA<br />

************ WORK FIELDS FOR THIS VIEW PROCESSOR *****************<br />

************ here starts area of output fields *******************<br />

V8OUTPF DS 0H Output fields<br />

* DSNAME . . defined in common workarea<br />

DEVTYPE DS BL4 Device type<br />

* VOLSER . . defined in common workarea<br />

VOLSEQ DS PL2 Volume sequence number<br />

NUMVOLS DS PL2 Volume Count<br />

UNITNAME DS CL8 Unit name (SERIES)<br />

DEVCLASS DS CL4 Device class (DASD, TAPE, ...)<br />

TYPE DS CL8 Entry type<br />

USERCAT DS CL44 Usercatalog name<br />

OPTION DS CL8 Option (LONG / USERCAT)<br />

<strong>Catalog</strong>SearchInterface 97


98 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

PREFIX DS CL3 Prefix (YES / NO)<br />

V8OUTPL EQU *-V8OUTPF Output fields length<br />

************ here ends area of output fields *******************<br />

SPACE<br />

WKS1CAT DS CL1 <strong>Catalog</strong> search option (Y / b)<br />

WKCSIPR1 DS A 1st parameter address for CSI<br />

WKCSIPR2 DS A 2nd parameter address for CSI<br />

WKCSIPR3 DS A 3rd parameter address for CSI<br />

WKCSIRSN DS XL4 CSI reason area<br />

WKCSISEL DS 0F CSI selection criteria<br />

*/* ---- COPY IGGCSINA --------------- copied to (w/o DSECT): ----- */<br />

CSIFILTK DS CL44 FILTER KEY<br />

CSICATNM DS CL44 CATALOG NAME OR BLANKS<br />

CSIRESNM DS CL44 RESUME NAME OR BLANKS<br />

CSIDTYPD DS 0CL16 ENTRY TYPES<br />

CSIDTYPS DS 16CL1 ENTRY TYPES<br />

CSIOPTS DS 0CL4 CSI OPTIONS<br />

CSICLDI DS CL1 RETURN D&I IF C A MATCH Y OR BLNK<br />

CSIRESUM DS CL1 RESUME FLAG Y OR BLANK<br />

CSIS1CAT DS CL1 SEARCH CATALOG Y OR BLANK<br />

CSIRESRV DS XL1 RESERVED<br />

CSINUMEN DS H NUMBER OF ENTRIES FOLLOWING<br />

CSIENTS DS 0CL8 VARIABLE NUMBER OF ENTRIES FOLLOW<br />

CSIFLDNM DS CL8 FIELD NAME<br />

*/* ---- COPY IGGCSINA --------------- end of copy book ----------- */<br />

CSIFLDN2 DS CL8 2nd field name (VOLSER)<br />

CSIFLDN3 DS CL8 3rd field name (FILESEQ)<br />

SPACE<br />

WKCURPOS DS 2F saved curr. position (R10,R11)<br />

WKCURVOL DS 2F saved current volser (R14,R15)<br />

WKLSTPOS DS 2F saved last position (R10,R11)<br />

WKLSTVOL DS 2F saved last volser (R14,R15)<br />

SPACE<br />

EDTINFO MF=(L,WKEDTINF) Parameter List for EDTINFO<br />

SPACE<br />

UCBSCAN MF=(L,WKUCBSCN) Parameter List for UCBSCAN<br />

WKUCBSWA DS CL100 UCBSCAN work area<br />

WKUCBCPY DS CL48 UCB copy area<br />

SPACE<br />

WKSYMBP DS CL(SYMBP_LEN) Parameter List for ASASYMBM<br />

WKSYMBRC DS F ASASYMBM return code<br />

WKPATTRN DS CL6 pattern for symbol substitution<br />

WKTARGET DS CL6 target for symbol substitution<br />

WKTARGLN DS F target length<br />

WKSYMTBL DS CL6,CL6,BL4 symbol, substitution, devtype<br />

DS CL6,CL6,BL4 2nd entry<br />

DS CL6,CL6,BL4 3rd entry<br />

WKSYMTBN EQU 3 number of table entries<br />

SPACE<br />

WKTRTAB DS CL256 Area used for TR, TRT<br />

WALEN EQU *-WADS Length of work area<br />

SPACE 3<br />

CSIRWORK DSECT CSI RETURN WORK AREA<br />

CSIUSRLN DS F TOTAL LENGTH OF WORK AREA<br />

CSIREQLN DS F MINIMUM REQUIRED WORK AREA<br />

CSIUSDLN DS F TOTAL LENGTH OF WORK AREA USED<br />

CSINUMFD DS H NUMBER OF FIELD NAMES PLUS ONE<br />

SPACE


CSICFLG DS BL1 CATALOG FLAG INFORMATION<br />

CSINTICF EQU X’80’ NON-ICF CATALOG, NOT SUPPORTED<br />

CSINOENT EQU X’40’ NO ENTRY FOUND FOR THIS CATALOG<br />

CSINTCMP EQU X’20’ DATA ... NOT COMPLETE<br />

CSICERR EQU X’10’ CATALOG NOT PROCESSED<br />

CSICERRP EQU X’08’ CATALOG PARTIALLY PROCESSED<br />

CSICTYPE DS CL1 CATALOG TYPE (HEX ’F0’)<br />

CSICNAME DS CL44 CATALOG NAME<br />

CSICRETN DS 0CL4 RETURN INFORMATION FOR CATALOG<br />

CSICRETM DS CL2 CATALOG RETURN MODULE ID<br />

CSICRETR DS XL1 CATALOG RETURN REASON CODE<br />

CSICRETC DS XL1 CATALOG RETURN CODE<br />

WORKEND DS 0F<br />

SPACE<br />

CSIENTRY DS 0H<br />

CSIEFLAG DS XL1 ENTRY FLAG INFORMATION<br />

CSIPMENT EQU X’80’ PRIMARY ENTRY<br />

CSIENTER EQU X’40’ ERROR INDICATION IS SET<br />

CSIEDATR EQU X’20’ DATA IS RETURNED FOR THIS ENTRY<br />

CSIETYPE DS XL1 ENTRY TYPE<br />

CSIENAME DS CL44 ENTRY NAME<br />

CSIERETN DS 0XL4 RETURN INFORMATION FOR ENTRY<br />

CSIERETM DS CL2 ENTRY RETURN MODULE ID<br />

CSIERETR DS XL1 ENTRY RETURN REASON CODE<br />

CSIERETC DS XL1 ENTRY RETURN CODE<br />

ORG CSIERETN<br />

CSIEDATA DS 0H<br />

CSITOTLN DS XL2 TOTAL LENGTH OF RETURNED DATA<br />

DS XL2 RESERVED<br />

CSILENFD DS 0H<br />

CSILENF1 DS XL2 LENGTH OF FIELD(S)<br />

SPACE 3<br />

PRINT NOGEN<br />

ASASYMBP , ASASYMBM Parameter List<br />

SPACE 3<br />

CVT DSECT=YES CVT DSECT<br />

SPACE 3<br />

IEFUCBOB DEVCLAS=DA UCB MAPPING MACRO<br />

- - - - - - - - - - - - - - - - 11 Line(s) not Displayed<br />

END ,<br />

<strong>Catalog</strong>SearchInterface 99


100 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong>


Appendix B. What’s Changed <strong>and</strong> What’s New<br />

In this appendix we show the complete comm<strong>and</strong> syntax for the MODIFY CATALOG<br />

comm<strong>and</strong> <strong>and</strong> the new <strong>and</strong> changed messages that ECS utilizes.<br />

B.1 MODIFY CATALOG Comm<strong>and</strong> Syntax<br />

The MODIFY CATALOG comm<strong>and</strong> <strong>and</strong> its parameters are shown in Figure 51.<br />

{MODIFY|F} CATALOG, {ABEND({id|taskaddr|ALLOCATE|ANALYSIS|MODIFY})}<br />

{ALIASLEVEL(n)}<br />

{ALLOCATE(catname)[,{NOISC|NOVLF}]}<br />

{ALLOCATED[(volser)]}<br />

{CATMAX(xx)}<br />

{CLOSE(catname)}<br />

{{DUMPON[(retcode,rsncode,modid[,count])]|DUMPOFF}}<br />

{ECSHR(AUTOADD|CONNECT|DISCONNECT|<br />

ENABLE,catname|ENABLEALL|REMOVE,catname|<br />

STATUS[,catname])}<br />

{END(id)[,{REDRIVE|NOREDRIVE}]}<br />

{ENTRY[(csectname)]}<br />

{{ISC|NOISC}(catname)}<br />

{LIST[{(id)|(taskaddr)}]}<br />

{LISTJ(jobname)[,DETAIL]}<br />

{REPORT[,{CACHE[(catname)]|DUMP|<br />

PERFORMANCE[(RESET)]}]}<br />

{RESTART}<br />

{ROTATE|NOROTATE}<br />

{{SYS%ON|SYS%OFF}}<br />

{TASKMAX(xx)}<br />

{UNALLOCATE[(catname)]}<br />

{VCLOSE(volser)}<br />

{{VLF|NOVLF}(catname)}<br />

{{VUNALLOCATE|NOVUNALLOCATE}}<br />

{{WARNING|NOWARNING}}<br />

Figure 51. MODIFY CATALOG Comm<strong>and</strong> Syntax<br />

The parameters are:<br />

ABEND<br />

Terminates a CAS task with abend code 91A. Any catalog request in process<br />

at the time of the abend is redriven once. The task can be specified as:<br />

(id)<br />

The service task with the specified CAS task id is terminated.<br />

(taskaddr)<br />

The CAS service task with the specified four byte hexadecimal TCB<br />

address is terminated.<br />

(ALLOCATE)<br />

The CAS allocation task (IGG0CLGE) is terminated <strong>and</strong> a new CAS<br />

allocation task is attached.<br />

© Copyright <strong>IBM</strong> Corp. 1999 101


102 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

(ANALYSIS)<br />

The CAS analysis task (IGG0CLGG) is terminated <strong>and</strong> a new CAS analysis<br />

task is attached.<br />

(MODIFY)<br />

The CAS modify task (IGG0CLGA) is terminated <strong>and</strong> a new CAS modify<br />

task is attached.<br />

ALIASLEVEL(n)<br />

Sets the number of data set name qualifiers to be used in the multilevel alias<br />

facility catalog search. The value of n can be an integer from 1 through 4. The<br />

alias level is initially set at IPL with the value specified in the SYSCAT<br />

statement of parmlib member LOADxx or in the SYSCATxx member of<br />

SYS1.NUCLEUS.<br />

ALLOCATE(catname)[,{NOISC|NOVLF}]<br />

Allocates the catalog specified as catname to the CAS. The optional<br />

parameters are:<br />

NOISC Deactivates the in-storage catalog cache (ISC) for the catalog.<br />

NOVLF Deactivates the catalog data space cache (CDSC) for the catalog.<br />

ALLOCATED[(volser)]<br />

Lists the name, volume serial number, current allocation count, <strong>and</strong> status<br />

flags for every catalog currently allocated to the CAS. The information is listed<br />

in message IEC348I.<br />

If a volume serial number is specified (volser), only information for catalogs<br />

residing on that volume is listed.<br />

CATMAX(xx)<br />

Closes all open user catalogs, <strong>and</strong> sets the maximum number of catalogs that<br />

can be open concurrently in CAS. The limit is specified as a hexadecimal<br />

value xx from 01 through FF.<br />

When the limit is reached, the least recently accessed catalog is closed,<br />

freeing the CAS storage it has occupied. Closed catalogs remain allocated.<br />

They remain allocated, but in restart status with no storage in the CAS.<br />

CLOSE(catname)<br />

Closes the catalog specified as catname. All CAS storage for the catalog is<br />

released. The catalog remains allocated to the CAS <strong>and</strong> will be reopened the<br />

next time a request is processed for that catalog.<br />

DUMPON[(retcode,rsncode,modid[,count])]|DUMPOFF<br />

Activates or deactivates dynamic dumping by the CAS. The default,<br />

DUMPOFF is set at IPL. The optional parameters for DUMPON are:<br />

retcode The catalog return code in decimal (000-255), or ***<br />

rsncode The catalog reason code in decimal (000-255), or ***<br />

modid The catalog module identifier in CAS, or **<br />

count The limit number in decimal (000-999)


Options in parentheses that follow the DUMPON parameter can be used to<br />

create a dump whenever a given return code, reason code, <strong>and</strong> module<br />

identifier occur. This dump can prove valuable to service personnel in solving<br />

problems. Normally, the return code, reason code, <strong>and</strong> module identifier are<br />

available on return from CAS <strong>and</strong> are printed by AMS. The module identifier<br />

corresponds to the last two characters in the catalog module name. For<br />

example, the module identifier is A3 for IGG0CLA3.<br />

The return code, reason code, <strong>and</strong> module identifiers can be specified as a<br />

string of asterisks to indicate that any value encountered will match the value<br />

of that field. This is referred to as a generic match. All three fields cannot be<br />

simultaneously specified as asterisks. Whenever a generic match is specified<br />

for a particular field, it will be assumed that field always matches the value<br />

being returned by catalog for a catalog request; for example:<br />

MODIFY CATALOG,DUMPON(008,042,**)<br />

This will create a dump for any return code 8, reason code 42, regardless of<br />

the module that detected the error.<br />

An option has been provided for a match count to obtain the "nth" occurrence<br />

of a return code, reason code, <strong>and</strong> module identifier. The match count is<br />

decremented by one each time a return code, reason code, <strong>and</strong> module<br />

identifier is set in the catalog address space. If this option is not specified or is<br />

set to 000, then the first occurrence causes a dump.<br />

Only one set of return codes, reason codes <strong>and</strong> module identifiers can be set<br />

at a time. Each entry overwrites the previous information. Once a match<br />

occurs, the information is cleared <strong>and</strong> the original DUMPON status is<br />

maintained. If DUMPON is entered without the additional options, certain<br />

conditions will produce dumps automatically. Then, if a DUMPON with options<br />

is entered, a match will cause a dump, <strong>and</strong> the return code, reason code, <strong>and</strong><br />

module identifier will be cleared. The DUMPON status will remain on.<br />

MODIFY CATALOG,REPORT,DUMP can be used to view the settings.<br />

The header for the catalog dynamic dump will contain the return code <strong>and</strong><br />

reason code in hexadecimal. For example:<br />

CAS DYNAMIC DUMP-IGG0CLA9 RCX'F6' RSNX'00'<br />

ECSHR(AUTOADD|CONNECT|DISCONNECT|ENABLE,catname|ENABLEALL|<br />

REMOVE,catname|STATUS[,catname])<br />

Enables the AutoAdd function for ECS, enables an individual catalog or all<br />

catalogs for ECS, or displays ECS status information for the entire ECS<br />

structure on an individual catalog.<br />

AUTOADD<br />

Enables the AutoAdd function for ECS. This requires CAS to be connected<br />

to the ECS structure in an active CFRM policy. The function is enabled for<br />

all systems in a Parallel Sysplex. AutoAdd causes ECS-eligible catalogs to<br />

be automatically added to the ECS structure on the next reference to the<br />

catalog. <strong>Catalog</strong>s are considered ECS-eligible if all of the following<br />

conditions are true:<br />

The catalog has the ECSHARING attribute.<br />

The catalog has shareoptions(3 4).<br />

The catalog resides on a volume that is defined as shared.<br />

What’s Changed <strong>and</strong> What’s New 103


104 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

Note that catalogs which have been removed from ECS will also be<br />

re-enabled by the MODIFY CATALOG comm<strong>and</strong> with the ECSHR(AUTOADD)<br />

parameter.<br />

CONNECT<br />

Connects the system to the ECS structure in the coupling facility. The CAS<br />

issues an IXLCONN request to allocate <strong>and</strong> connect to the ECS structure<br />

or to connect to the already allocated structure.<br />

DISCONNECT<br />

Disconnects the system from the ECS structure in the coupling facility. The<br />

CAS issues an IXLDISC request. Any ECS catalogs in the structure are<br />

removed <strong>and</strong> will subsequently be shared using the VVDS sharing mode.<br />

ENABLE,catname<br />

Enables the specified catalog catname for ECS if it has been marked<br />

temporarily ineligible. It will be added to the ECS structure on the next<br />

reference to the catalog.<br />

ENABLEALL<br />

Enables all currently known catalogs for ECS that have been marked<br />

temporarily ineligible. They will be added to the ECS structure on the next<br />

reference to the catalog.<br />

REMOVE,catname<br />

Removes the specified catalog catname from the ECS structure, thereby<br />

affecting all sharing systems. The catalog will then be marked temporarily<br />

ineligible for ECS, <strong>and</strong> the sharing protocol reverts to the VVDS method.<br />

The MODIFY CATALOG comm<strong>and</strong> with the ECSHR(ENABLE,...) or the<br />

ENABLEALL parameter must be used to enable the catalog again for ECS.<br />

To permanently remove a catalog from ECS use, turn off the ECSHARING<br />

attribute using the AMS ALTER comm<strong>and</strong>.<br />

Note that a removed catalog can also be re-enabled by a MODIFY CATALOG<br />

comm<strong>and</strong> with the ECSHR(ENABLE,...) or ECSHR(ENABLEALL)<br />

parameter issued from another system.<br />

STATUS[,catname]<br />

Displays the status of the coupling facility connection <strong>and</strong> the ECS status of<br />

the open catalogs. The information is displayed in message IEC380I.<br />

If a catalog is specified (catname), only the ECS status for this catalog is<br />

displayed.<br />

END(id)[,{REDRIVE|NOREDRIVE}]<br />

Ends the service task with the specified CAS task id. This is the preferred<br />

method of ending a CAS task. The subparameters are:<br />

REDRIVE<br />

Specifies that any catalog request in process at that time will continue to be<br />

processed by a different task. REDRIVE will free up an ENQ lockout. The<br />

CAS task is abended with abend code 91A.<br />

NOREDRIVE<br />

Specifies that any catalog request in process at that time will fail with a<br />

catalog return code of 246. The CAS task is abended with abend code 71A.


ENTRY[(csectname)]<br />

Displays the names, the entry points, the FMIDs, <strong>and</strong> the maintenance level of<br />

all CSECTS in the catalog load modules IGG0CLX0 (resident in CAS) <strong>and</strong><br />

IGG0CLHA (resident in the link pack area). The information is displayed in<br />

message IEC349I.<br />

If a CSECT name is specified (csectname), only the information for this<br />

individual CSECT is displayed.<br />

The output of this comm<strong>and</strong> is probably best viewed on the system log due to<br />

its size, if all entry points are requested.<br />

{ISC|NOISC}(catname)<br />

Activates (ISC) or deactivates (NOISC) the in-storage catalog cache (ISC) for<br />

the catalog specified as catname. The catalog must already be allocated to<br />

use this comm<strong>and</strong>.<br />

The objective of in-storage cache is to cache only those records which are<br />

read directly. Records will not be cached for other types of requests, <strong>and</strong><br />

therefore in-storage cache is not then in effect. The ISC flag will be turned on<br />

the first time a direct read is done. This flag will remain on until that record is<br />

no longer in cache. At that point it will remain off until the next direct read to<br />

the catalog.<br />

LIST[{(id)|(taskaddr)}]<br />

Lists currently active CAS service tasks, their related jobnames, elapsed<br />

times, <strong>and</strong> unique identifiers. The information is displayed in message IEC347I.<br />

The identifiers listed can then be used in other MODIFY CATALOG comm<strong>and</strong>s that<br />

require a CAS task ID.<br />

All current tasks are listed unless an individual task is specified. The task can<br />

be specified as:<br />

(id)<br />

To list information for the service task with this unique identifier.<br />

(taskaddr)<br />

To list information for the service task with the specified four byte<br />

hexadecimal TCB address.<br />

LISTJ(jobname)[,DETAIL]<br />

Displays information about an active CAS service task for the job specified as<br />

jobname. The DETAIL keyword can be used to request optional information.<br />

This optional information is primarily internal information about the catalog<br />

request. However, some of the information can be useful for diagnosing<br />

real-time problems involving the catalog address space.<br />

For example, an entry could show that the request has been waiting for a long<br />

time for completion of an ENQ. Then the ENQ resource name shown in the<br />

detail information could be used with a D GRS,C to find out what task in the<br />

system might be causing the wait condition.<br />

REPORT[,{CACHE[(catname)]|DUMP|PERFORMANCE[(RESET)]}]<br />

Displays basic information about the CAS status, about the cache<br />

performance, the current CAS dump status, or CAS performance statistics.<br />

What’s Changed <strong>and</strong> What’s New 105


106 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

The information is displayed in message IEC359I. If no additional keywords<br />

are specified, current limits <strong>and</strong> installation-specified defaults are provided.<br />

The optional parameters are:<br />

CACHE[(catname)]<br />

Displays general information on catalog cache status. The report<br />

generated shows information useful in evaluating the catalog cache<br />

performance for the specified catalogs. If you do not specify a catalog<br />

name (catname), performance information for all catalogs currently active<br />

in the catalog address space is listed.<br />

DUMP<br />

Displays the current dump status of the CAS. The dump status can be<br />

enabled or disabled using the DUMPON <strong>and</strong> DUMPOFF parameters of the<br />

MODIFY CATALOG comm<strong>and</strong>.<br />

PERFORMANCE<br />

Lists information about events in CAS that invoke functions outside of the<br />

catalog component. It shows the number of entries to the catalog, the<br />

number of occurrences for a list of internal events, <strong>and</strong> the average time<br />

spent completing that event.<br />

PERFORMANCE(RESET)<br />

The RESET parameter is used to reset the performance reporting<br />

information to zero.<br />

RESTART<br />

Restarts the CAS in a new address space. The CAS mother task is ended with<br />

abend code 81A, <strong>and</strong> any catalog requests in process at the time are redriven.<br />

Before you use this comm<strong>and</strong> we recommend that you carry out the actions<br />

described in 6.4.2, “CAS Hang or Lockout Situations” on page 79, to make<br />

sure that a dump is available. The RESTART comm<strong>and</strong> should only be used<br />

when the only other option is an IPL. You should try other versions of the<br />

MODIFY comm<strong>and</strong> first before you use RESTART to solve catalog or VVDS<br />

problems.<br />

ROTATE|NOROTATE<br />

Activates or deactivates rotation through the catalog resource table (CRT)<br />

when control blocks are assigned to process catalog requests. Rotation<br />

delays the reuse of CAS control blocks as long as possible, increasing their<br />

availability for examination in diagnostic situations.<br />

SYS%ON|SYS%OFF<br />

Activates or deactivates the conversion of SYS% to SYS1. The default setting<br />

for SYS% conversion is set during system initialization.<br />

TASKMAX(xx)<br />

Sets the maximum number of CAS service tasks that are attached to process<br />

catalog requests. Once this limit has been reached, further requests for CAS<br />

services are delayed until a task control block becomes available.<br />

The limit is specified as a hexadecimal value xx from 18 (decimal 24) to B4<br />

(decimal 180). The value must also be at least as high as the current number


of tasks active in CAS. This value is displayed using the REPORT parameter.<br />

The default, set at IPL, is 3C (decimal 60).<br />

If the value xx is less than the current number of service tasks, the value for<br />

the maximum number of service tasks is set to the larger of B4 or the current<br />

number of service tasks.<br />

UNALLOCATE[(catname)]<br />

Unallocates the catalog specified as catname from CAS. The CAS storage<br />

used by the catalog is freed, <strong>and</strong> if this is the only catalog that resides on the<br />

device, the device on which the catalog resides is unallocated from CAS.<br />

If you do not specify a catalog, all catalogs allocated to CAS are unallocated.<br />

VCLOSE(volser)<br />

Closes the VVDS which resides on the volume with the volume serial number<br />

volser. The VVDS is reopened by the next request for the VVDS, <strong>and</strong> new<br />

control blocks are built.<br />

Do not use VCLOSE to unallocate a VVDS to vary a volume offline. Use<br />

VUNALLOCATE.<br />

{VLF|NOVLF}(catname)<br />

Activates (VLF) or deactivates (NOVLF) the catalog data space cache (CDSC)<br />

for the catalog named catname. To activate the CDSC for a catalog, the<br />

catalog must already be defined as eligible for CDSC. To deactivate CDSC,<br />

the catalog must already be allocated to CDSC.<br />

VUNALLOCATE|NOVUNALLOCATE<br />

Specifies that all dynamically allocated VVDSs are to be unallocated from<br />

CAS (VUNALLOCATE) when a request is completed, or left allocated to CAS<br />

(NOVUNALLOCATE) after a request has completed. By default, VVDSs are<br />

unallocated after processing a request. Performance can be improved if you<br />

specify NOVUNALLOCATE, because repeated requests for a volume do not<br />

result in repeated dynamic allocations for the VVDS.<br />

If you specify NOVUNALLOCATE, VVDSs remain allocated until<br />

VUNALLOCATE is issued, CAS is restarted, or the system is IPLed.<br />

VUNALLOCATE can be used to unallocate a VVDS from CAS to allow a<br />

volume to be varied offline.<br />

WARNING|NOWARNING<br />

Specifies if the system is to issue message IDC1997I or IDC1998I before<br />

initiating an AMS DELETE UCAT FORCE, or DELETE VVDS RECOVERY. The<br />

messages require an operator response to complete the comm<strong>and</strong>s.<br />

At IPL time, this option is set to WARNING. The current setting of this option<br />

can be displayed using the REPORT parameter of the MODIFY CATALOG<br />

comm<strong>and</strong>. For information about this type of AMS DELETE, refer to:<br />

DFSMS/MVS V1R5 Access Method Services for the Integrated <strong>Catalog</strong><br />

Facility, SC26-4906.<br />

If you do not want the system to issue the messages, use NOWARNING.<br />

What’s Changed <strong>and</strong> What’s New 107


B.2 New <strong>and</strong> Changed Messages<br />

108 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

IDC3009I VSAM CATALOG RETURN CODE IS rtn - REASON CODE IS<br />

IGG0CLaa - rsn<br />

Explanation: <strong>Catalog</strong> management returned this return code <strong>and</strong> reason code as<br />

a result of a catalog error or exceptional condition.<br />

Return code 228 has been changed to describe ECS errors. (Return code 228,<br />

reason code 0 was used to report a hardware error when reading the time-of-day<br />

clock.)<br />

Return code 228<br />

Explanation: An error occurred while processing an <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong><br />

request. The following reasons may be corrected by the installation; codes not<br />

shown indicate an internal system error.<br />

Reason Code Description<br />

3 Coupling facility connection error. If received with message<br />

IEC377I, fields aaaa <strong>and</strong> bbbb in that message contain the<br />

return <strong>and</strong> reason codes from IXLCONN.<br />

4 An ECS request was made but the system is not ECS-active.<br />

9 Coupling facility disconnection error. If received with message<br />

IEC377I, fields aaaa <strong>and</strong> bbbb in that message contain the<br />

return <strong>and</strong> reason codes from IXLDISC.<br />

13 An ECS activation request was issued for a catalog with the<br />

NOECSHARING attribute.<br />

26 Returned when the system determines that the catalog it wants to<br />

access is currently being shared by other systems using ECS,<br />

<strong>and</strong> the current system is not able to use, or is currently not using<br />

ECS.<br />

28 <strong>Catalog</strong> is temporarily in use by another system using VVDS<br />

sharing mode.<br />

29 ECS-activation of a catalog is requested, but the catalog does not<br />

have cross-system share options or is not on a shared volume.


IEC348I ALLOCATED CATALOGS<br />

Explanation: FLAGS VOLSER USER CATALOG NAME<br />

abcdef volser count cname<br />

Y/N-ALLOCATED TO CAS<br />

S-SMS<br />

V-VLF<br />

I-ISC<br />

C-CLOSED<br />

D-DELETED<br />

R-SHARED<br />

A-ATL<br />

E-ECS SHARED<br />

K-LOCKED<br />

The MODIFY comm<strong>and</strong> was issued for CAS, requesting a list of allocated<br />

catalogs. Information about each catalog includes the following:<br />

volser The volume serial number.<br />

count The hexadecimal use count.<br />

cname The catalog's name (this name may contain up to 44 characters).<br />

a Allocation status:<br />

If a is Y, the catalog is allocated to CAS.<br />

If a is N, the catalog is not allocated to CAS.<br />

b SMS status:<br />

If b is S, the catalog is SMS managed.<br />

c Condition:<br />

If c is V, the VLF (Data Space Cache) is active for this catalog.<br />

If c is I, the ISC (IN-STORAGE CATALOG) is active for this catalog.<br />

If c is C, the catalog is closed to free record management storage. The<br />

catalog might have been closed by the F CATALOG, CLOSE(nnnnn...)<br />

comm<strong>and</strong>, or by CAS recovery functions that caused control block<br />

rebuild <strong>and</strong>/or freed CAS resources. At the next access, the catalog<br />

will be opened with a new set of record management control blocks.<br />

This new set of control blocks will not affect catalog allocation,<br />

CAXWA, ACB, or RPL storage in CSA.<br />

If c is D, the catalog has been deleted.<br />

d Tape-volume indicator:<br />

If d is A, the catalog is a tape volume catalog.<br />

e <strong>Sharing</strong> status:<br />

If e is R, the catalog is using cross-system sharing in VVDS mode.<br />

If e is E, the catalog is shared <strong>and</strong> is using the <strong>Enhanced</strong> <strong>Catalog</strong><br />

<strong>Sharing</strong> facility.<br />

f If f is K, the catalog is locked.<br />

Source: DFSMSdfp<br />

Module: IGG0CLGB<br />

System Action: The system issues a multi-line message with the volume serial<br />

number, the hexadecimal use count <strong>and</strong> the name of each catalog.<br />

What’s Changed <strong>and</strong> What’s New 109


110 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

IEC359I CATALOG {REPORT OUTPUT | CACHE REPORT | REPORT DUMP<br />

OUTPUT | PERFORMANCE OUTPUT}<br />

CATALOG REPORT OUTPUT<br />

CATALOG COMPONENT LEVEL = complvl<br />

CATALOG ADDRESS SPACE ASN = asn<br />

SERVICE TASK UPPER LIMIT = uppr<br />

HIGHEST # SERVICE TASKS = hnum<br />

CURRENT # SERVICE TASKS = cnum<br />

MAXIMUM # OPEN CATALOGS = maxo<br />

ALIAS TABLE AVAILABLE = {YES|NO}<br />

ALIAS LEVELS SPECIFIED = n<br />

CRT TABLE SLOT ROTATION = {ON|OFF}<br />

SYS% TO SYS1 CONVERSION = {ON|OFF}<br />

CAS MOTHER TASK = address<br />

CAS MODIFY TASK = address<br />

CAS ANALYSIS TASK = address<br />

CAS ALLOCATION TASK = address<br />

VOLCAT HI-LEVEL QUALIFIER = volcathlq<br />

VUNALLOCATE = {ON|OFF}<br />

DELETE UCAT/VVDS WARNING = {ON|OFF}<br />

CATALOG CACHE REPORT<br />

HIT% RECORDS SEARCHES FOUND DELETES SHR UPD PURGE<br />

catalog name (ISC|VLF)<br />

hit% records searches found deletes sharing purge<br />

CATALOG REPORT DUMP OUTPUT<br />

STATUS RETURN CODE REASON CODE MODULE ID COUNT<br />

{ON|OFF} retcode rsncode modid count<br />

CATALOG PERFORMANCE REPORT<br />

-----CATALOG EVENT---- --COUNT-- ---AVERAGE--event<br />

count avgtime<br />

Explanation: This message is issued in response to one of the following<br />

comm<strong>and</strong>s:<br />

MODIFY CATALOG,REPORT<br />

MODIFY CATALOG,REPORT,CACHE<br />

MODIFY CATALOG,REPORT,DUMP<br />

MODIFY CATALOG,REPORT,PERFORMANCE<br />

The message display contains the following information:<br />

For a CATALOG REPORT OUTPUT:<br />

complvl The FMID value.<br />

asn The current ASID for CAS.<br />

uppr The service task upper limit. The default for uppr is X'00C8', but can<br />

be set to another value by using the TASKMAX comm<strong>and</strong> format of<br />

MODIFY CATALOG. uppr can never be less than the service task high<br />

water mark, hnum.


hnum The service task high water mark. This value can never be less than<br />

the number of service tasks currently attached, cnum.<br />

cnum The number of service tasks currently attached. This number may be<br />

less than the service task lower limit, lowr, if:<br />

CAS has not yet processed the number of requests represented<br />

by lowr.<br />

or<br />

Tasks have abended.<br />

As requests are processed, CAS creates new tasks to maintain lower<br />

limit, <strong>and</strong> cnum increases.<br />

maxo The maximum number of ICF catalogs that can be open concurrently<br />

in CAS (or NOLIMIT). This number can be set using the CATMAX<br />

comm<strong>and</strong> format of MODIFY CATALOG.<br />

n The number of alias level qualifiers currently being used by catalog<br />

search logic (MLA). Valid values for n are1,2,3,or4.<br />

address The hexadecimal TCB address of various CAS tasks.<br />

volcathlq The high level qualifier used for the tape volume catalogs of this<br />

system.<br />

For a CATALOG CACHE REPORT:<br />

catname The name of the catalog to which the following information applies.<br />

hit% The relative number of times a search of the cache found the<br />

requested record, expressed as a percentage.<br />

records The number of records added to the cache.<br />

searches The number of times the cache was searched.<br />

found The number of times a record was found in the cache.<br />

deletes The number of records deleted from the cache.<br />

sharing The number of times the sharing protocol was effective in<br />

communicating changes made by sharing systems at the granularity of<br />

a catalog record.<br />

purge The number of times the entire cache for this catalog had to be<br />

invalidated (VLF cache only).<br />

For a CATALOG REPORT DUMP OUTPUT:<br />

retcode The catalog return code (0 to 255, or ’***’), for which dynamic dumping<br />

is to occur.<br />

rsncode The catalog reason code (0 to 255, or ’***’), for which dynamic<br />

dumping is to occur.<br />

modid The catalog module identifier, or ’**’, for which dynamic dumping is to<br />

occur.<br />

count The match count (0 to 999) for dynamic dumping.<br />

This number decrements each time an error that matches the return<br />

code, reason code, <strong>and</strong> module identifier is detected within the catalog<br />

address space. When the count becomes zero, a dump will be taken<br />

for that occurrence of the error.<br />

What’s Changed <strong>and</strong> What’s New 111


112 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

For a CATALOG PERFORMANCE REPORT:<br />

event The name of an internal event that requests a system function outside<br />

CAS.<br />

count The count of occurrences for this event.<br />

avgtime The average time for each of those events.<br />

The time may appear in one of three forms:<br />

xxx.xxx MSEC-milliseconds, used for times up to 999.999<br />

milliseconds.<br />

xxx.xxx SEC-second, used for times from 1.000 seconds up to<br />

999.999 seconds.<br />

hh:mm:ss-hours, minutes, <strong>and</strong> seconds, used for times greater than<br />

999.999 seconds.<br />

Source: DFSMSdfp<br />

System Action: The system issues a multi-line message with the appropriate<br />

general information about CAS status.<br />

IEC377I ENHANCED CATALOG SHARING:<br />

{CONNECT COMPLETE |<br />

DISCONNECT COMPLETE |<br />

NOT CONNECTED: rc-rsn(sfi),mm |<br />

ERROR: rc-rsn(sfi),mm |<br />

ENABLED catname |<br />

REMOVED catname |<br />

AUTOADD ENABLED |<br />

AUTOADD IS NOT CURRENTLY ENABLED |<br />

ALL ELIGIBLE CATALOGS ENABLED}<br />

Explanation: This is the general status message for ECS.<br />

CONNECT COMPLETE<br />

Issued to acknowledge the successful connection of <strong>Enhanced</strong> <strong>Catalog</strong><br />

<strong>Sharing</strong> (ECS) to the ECS structure in the coupling facility. This message is<br />

issued either during IPL, during a CAS restart, or when requested by a<br />

MODIFY CATALOG comm<strong>and</strong> with the ECSHR(CONNECT) parameter.<br />

DISCONNECT COMPLETE<br />

Issued to acknowledge a successful disconnection of ECS from the ECS<br />

structure in the coupling facility. This message is issued either during a<br />

CAS restart or when requested via a MODIFY CATALOG comm<strong>and</strong> with the<br />

ECSHR(DISCONNECT) parameter.<br />

NOT CONNECTED: rc-rsn(sfi),mm<br />

Issued during IPL or CAS restart when the system automatically tries but<br />

cannot connect to the ECS structure. The parameters rc, rsn <strong>and</strong> mm are<br />

the return code, reason code, <strong>and</strong> module ID of the detecting catalog<br />

module; see message IDC3009I for a description of these codes. If the


problem was detected by another service, sfi displays subfunction<br />

information related to the error.<br />

ERROR: rc-rsn(sfi),mm<br />

A situation has occurred which caused the sharing of catalogs using ECS<br />

to fail or to be terminated. This message is also issued for an unsuccessful<br />

CONNECT, DISCONNECT, or AUTOADD request by a MODIFY<br />

CATALOG(ECSHR) comm<strong>and</strong>. The parameters rc, rsn, <strong>and</strong> mm are the return<br />

code, reason code, <strong>and</strong> module ID of the detecting catalog module; see<br />

message IDC3009I for a description of these codes. If the problem was<br />

detected by another service, sfi displays subfunction information related to<br />

the error.<br />

ENABLED catname<br />

Issued to acknowledge an ECSHR(ENABLE,catname) request that was<br />

successful.<br />

REMOVED catname<br />

Issued to acknowledge an ECSHR(REMOVE,catname) request that was<br />

successful.<br />

AUTOADD ENABLED<br />

Issued to acknowledge an ECSHR(AUTOADD) request that was<br />

successful, or to report the status of the AUTOADD function after<br />

connecting to the ECS structure in the coupling facility.<br />

AUTOADD IS NOT CURRENTLY ENABLED<br />

Issued to report the status of the AUTOADD function after connecting to<br />

the ECS structure in the coupling facility.<br />

ALL ELIGIBLE CATALOGS ENABLED<br />

Issued to acknowledge an ECSHR(ENABLEALL) request that was<br />

successful.<br />

Source: DFSMSdfp<br />

Module: IGG0CLSH/IGG0CLSI<br />

System Action: In the case of termination of ECS at the system level, CAS<br />

disconnects from the coupling facility, <strong>and</strong> sharing for all sharers using the ECS<br />

method is therefore terminated. The sharing of catalogs reverts to the non-ECS<br />

method.<br />

In the case where the system lost its CF connection, all catalogs are removed<br />

from the ECS structure <strong>and</strong> the AUTOADD function is disabled.<br />

In the case of an ECS failure for an individual catalog, ECS is not activated for<br />

this catalog. The sharing method for this catalog remains the non-ECS method.<br />

Operator Response: Correct the situation which caused the error/failure <strong>and</strong><br />

retry the request.<br />

In the case of a lost CF connection, once the connection has been restored, issue<br />

the MODIFY CATALOG comm<strong>and</strong> with the ECSHR(AUTOADD) parameter to<br />

re-enable automatic activation.<br />

What’s Changed <strong>and</strong> What’s New 113


114 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

IEC378I catname IS NOT USING ENHANCED CATALOG SHARING.<br />

Explanation: This message is issued when the system is processing a shared<br />

catalog request <strong>and</strong> discovers for the very first time, or the first time since the last<br />

time the catalog was ECS-active, that the desired sharing method as defined for<br />

the named catalog is ECS, but either (1) another system is accessing the catalog<br />

in VVDS sharing mode, (2) another system has explicitly stopped ECS for this<br />

catalog using the MODIFY CATALOG comm<strong>and</strong> with the ECSHR(REMOVE)<br />

parameter, or (3) either of the above conditions existed when the system went<br />

down.<br />

In the text of the message above, catname indicates the catalog the system is<br />

accessing.<br />

Source: DFSMSdfp<br />

Module: IGG0CLSJ<br />

System Action: <strong>Sharing</strong> will continue with the non-enhanced method of catalog<br />

sharing. This may result in decreased performance for this catalog.<br />

Operator Response: Verify if ECS is desired for this catalog. If so, then issue the<br />

MODIFY CATALOG comm<strong>and</strong> with the ECSHR(ENABLE,...) parameter to start ECS<br />

for this catalog. For more information, see the manual Managing <strong>Catalog</strong>s,<br />

SC26-4914.<br />

IEC380I ENHANCED CATALOG SHARING<br />

Explanation: This message is issued in response to a MODIFY CATALOG comm<strong>and</strong><br />

with the ECSHR(STATUS) parameter. It displays the status of the CF connection<br />

as well as the ECS status of each open catalog.<br />

The possible values for the ECS system status are:<br />

AutoAdd<br />

The system is connected to the ECS structure <strong>and</strong> the automatic add<br />

function is enabled.<br />

Connected<br />

The system is connected to the ECS structure in the coupling facility;<br />

AUTOADD is disabled.<br />

Connect Failure<br />

While attempting to connect to the ECS structure, an error was returned<br />

from IXLCONN. The return <strong>and</strong> reason codes from IXLCONN are also<br />

displayed.<br />

Inact(CFFail)<br />

The system has disconnected because a coupling facility failure was<br />

detected.<br />

Inact(Disconnect)


ECS is disconnected from the ECS structure in the coupling facility due to a<br />

MODIFY CATALOG comm<strong>and</strong> with the ECSHR(DISCONNECT) parameter.<br />

Inact(Restart)<br />

The system disconnected while processing a CAS restart.<br />

Quiescing<br />

ECS is currently active but is in the process of quiescing.<br />

Unknown<br />

The system status of ECS is unknown.<br />

The possible values for a catalog's status are:<br />

Active<br />

ECS is active for the catalog.<br />

Inact(AddFailed)<br />

Activation of a catalog failed due to an internal system error.<br />

Inact(CFFail)<br />

The catalog is inactive because the coupling facility failed.<br />

Inact(CFFull)<br />

An attempt was made to activate the catalog but the ECS structure in the<br />

coupling facility is full.<br />

Inact(Disconnect)<br />

The catalog is inactive because the system disconnected from the ECS<br />

structure.<br />

Inact(MaxCats)<br />

An attempt was made to activate the catalog, but the maximum number of<br />

catalogs allowed to be active on a single system has been reached.<br />

Inact(NeverConn)<br />

The catalog is inactive because the system is not connected to the ECS<br />

structure in the coupling facility.<br />

Inact(NonECSAcc)<br />

The catalog is inactive because the last access to the catalog was from a<br />

system using VVDS sharing mode.<br />

Inact(NotElig)<br />

The catalog is inactive because it does not have the ECSHARING attribute.<br />

Inact(NotShrable)<br />

The catalog is inactive because it cannot be cross-system shared, because<br />

it either does not have SHAREOPTIONS(3 4) or the volume is not marked<br />

as shared.<br />

Inact(Removed)<br />

The catalog is inactive due to a MODIFY CATALOG comm<strong>and</strong> with the<br />

ECSHR(REMOVE,...) parameter.<br />

Inact(Unknown)<br />

What’s Changed <strong>and</strong> What’s New 115


116 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

The ECS status of this catalog has never been set or is otherwise<br />

unknown.<br />

Unavailable<br />

The ECS status of the catalog cannot be determined.<br />

Source: DFSMSdfp<br />

Module: IGG0CLGB<br />

System Action: System operation continues normally.<br />

Operator Response: None. For additional information on the interpretation of the<br />

output from this comm<strong>and</strong>, see Managing <strong>Catalog</strong>s, SC26-4914.<br />

IEC381I ENHANCED CATALOG SHARING HAS BEEN QUIESCED DUE TO A<br />

COUPLING FACILITY FAILURE ON ANOTHER SYSTEM.<br />

Explanation: This message is issued on an ECS-active system when another<br />

system in the sysplex that was also ECS-active, lost its connection to the ECS<br />

coupling facility structure.<br />

Source: DFSMSdfp<br />

Module: IGG0CLSI<br />

System Action: All ECS-active catalogs are deactivated <strong>and</strong> the AUTOADD<br />

function is disabled. However, the system remains connected to the ECS<br />

structure.<br />

Operator Response: Once the connection problem is resolved, issue the MODIFY<br />

CATALOG comm<strong>and</strong> with the ECSHR(AUTOADD) parameter to re-enable automatic<br />

activation. <strong>Catalog</strong>s not referenced by the system that lost the connection can be<br />

explicitly activated using the MODIFY CATALOG comm<strong>and</strong> with the<br />

ECSHR(ENABLE,...) parameter.


Appendix C. Special Notices<br />

This publication is intended to help experienced storage administrators<br />

implement <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong>. The information in this publication is not<br />

intended as the specification of any programming interfaces that are provided by<br />

DFSMS/MVS 1.5. See the PUBLICATIONS section of the <strong>IBM</strong> Programming<br />

Announcement for DFSMS/MVS 1.5 for more information about what publications<br />

are considered to be product documentation.<br />

References in this publication to <strong>IBM</strong> products, programs or services do not imply<br />

that <strong>IBM</strong> intends to make these available in all countries in which <strong>IBM</strong> operates.<br />

Any reference to an <strong>IBM</strong> product, program, or service is not intended to state or<br />

imply that only <strong>IBM</strong>'s product, program, or service may be used. Any functionally<br />

equivalent program that does not infringe any of <strong>IBM</strong>'s intellectual property rights<br />

may be used instead of the <strong>IBM</strong> product, program or service.<br />

Information in this book was developed in conjunction with use of the equipment<br />

specified, <strong>and</strong> is limited in application to those specific hardware <strong>and</strong> software<br />

products <strong>and</strong> levels.<br />

<strong>IBM</strong> may have patents or pending patent applications covering subject matter in<br />

this document. The furnishing of this document does not give you any license to<br />

these patents. You can send license inquiries, in writing, to the <strong>IBM</strong> Director of<br />

Licensing, <strong>IBM</strong> Corporation, North Castle Drive, Armonk, NY 10504-1785.<br />

Licensees of this program who wish to have information about it for the purpose<br />

of enabling: (i) the exchange of information between independently created<br />

programs <strong>and</strong> other programs (including this one) <strong>and</strong> (ii) the mutual use of the<br />

information which has been exchanged, should contact <strong>IBM</strong> Corporation, Dept.<br />

600A, Mail Drop 1329, Somers, NY 10589 USA.<br />

Such information may be available, subject to appropriate terms <strong>and</strong> conditions,<br />

including in some cases, payment of a fee.<br />

The information contained in this document has not been submitted to any formal<br />

<strong>IBM</strong> test <strong>and</strong> is distributed AS IS. The use of this information or the<br />

implementation of any of these techniques is a customer responsibility <strong>and</strong><br />

depends on the customer's ability to evaluate <strong>and</strong> integrate them into the<br />

customer's operational environment. While each item may have been reviewed<br />

by <strong>IBM</strong> for accuracy in a specific situation, there is no guarantee that the same or<br />

similar results will be obtained elsewhere. Customers attempting to adapt these<br />

techniques to their own environments do so at their own risk.<br />

Any pointers in this publication to external Web sites are provided for<br />

convenience only <strong>and</strong> do not in any manner serve as an endorsement of these<br />

Web sites.<br />

Reference to PTF numbers that have not been released through the normal<br />

distribution process does not imply general availability. The purpose of including<br />

these reference numbers is to alert <strong>IBM</strong> customers to specific information relative<br />

to the implementation of the PTF when it becomes available to each customer<br />

according to the normal <strong>IBM</strong> PTF distribution process.<br />

© Copyright <strong>IBM</strong> Corp. 1999 117


118 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

The following terms are trademarks of the International Business Machines<br />

Corporation in the United States <strong>and</strong>/or other countries:<br />

AIX DFSMSdss<br />

DFSMS/MVS DFSMS<br />

<strong>IBM</strong> Language Environment<br />

NetView PR/SM<br />

OS/390 RACF<br />

The following terms are trademarks of other companies:<br />

C-bus is a trademark of Corollary, Inc. in the United States <strong>and</strong>/or other countries.<br />

Java <strong>and</strong> all Java-based trademarks <strong>and</strong> logos are trademarks or registered<br />

trademarks of Sun Microsystems, Inc. in the United States <strong>and</strong>/or other countries.<br />

Microsoft, Windows, Windows NT, <strong>and</strong> the Windows logo are trademarks of<br />

Microsoft Corporation in the United States <strong>and</strong>/or other countries.<br />

PC Direct is a trademark of Ziff Communications Company in the United States<br />

<strong>and</strong>/or other countries <strong>and</strong> is used by <strong>IBM</strong> Corporation under license.<br />

ActionMedia, LANDesk, MMX, Pentium <strong>and</strong> ProShare are trademarks of Intel<br />

Corporation in the United States <strong>and</strong>/or other countries.<br />

UNIX is a registered trademark in the United States <strong>and</strong>/or other countries<br />

licensed exclusively through X/Open Company Limited.<br />

SET <strong>and</strong> the SET logo are trademarks owned by SET Secure Electronic<br />

Transaction LLC.<br />

Other company, product, <strong>and</strong> service names may be trademarks or service marks<br />

of others.


Appendix D. Related Publications<br />

The publications listed in this section are considered particularly suitable for a<br />

more detailed discussion of the topics covered in this redbook.<br />

D.1 International Technical Support Organization Publications<br />

D.2 <strong>Redbooks</strong> on CD-ROMs<br />

D.3 Other Publications<br />

For information on ordering these ITSO publications see “How to Get ITSO<br />

<strong>Redbooks</strong>” on page 121.<br />

DFSMShsm Primer, SG24-5272<br />

DFSMS Optimizer: The New HSM Monitor/Tuner, SG24-5248<br />

<strong>Redbooks</strong> are also available on the following CD-ROMs. Click the CD-ROMs<br />

button at http://www.redbooks.ibm.com/ for information about all the CD-ROMs<br />

offered, updates <strong>and</strong> formats.<br />

CD-ROM Title Collection Kit<br />

Number<br />

System/390 <strong>Redbooks</strong> Collection SK2T-2177<br />

Networking <strong>and</strong> Systems <strong>Management</strong> <strong>Redbooks</strong> Collection SK2T-6022<br />

Transaction Processing <strong>and</strong> Data <strong>Management</strong> <strong>Redbooks</strong> Collection SK2T-8038<br />

Lotus <strong>Redbooks</strong> Collection SK2T-8039<br />

Tivoli <strong>Redbooks</strong> Collection SK2T-8044<br />

AS/400 <strong>Redbooks</strong> Collection SK2T-2849<br />

Netfinity Hardware <strong>and</strong> Software <strong>Redbooks</strong> Collection SK2T-8046<br />

RS/6000 <strong>Redbooks</strong> Collection (BkMgr Format) SK2T-8040<br />

RS/6000 <strong>Redbooks</strong> Collection (PDF Format) SK2T-8043<br />

Application Development <strong>Redbooks</strong> Collection SK2T-8037<br />

These publications are also relevant as further information sources:<br />

DFSMS/MVS V1R5 Access Method Services for the Integrated <strong>Catalog</strong><br />

Facility, SC26-4906<br />

DFSMS/MVS V1R5 DFSMSdfp Advanced Services, SC26-4921<br />

DFSMS/MVS V1R5 DFSMSdfp Storage Administration Reference, SC26-4920<br />

DFSMS/MVS V1R5 General Information, GC26-4900<br />

DFSMS/MVS V1R5 DFSMSdss Storage Administration Guide, SC26-4930<br />

DFSMS/MVS V1R5 DFSMSdss Storage Administration Reference,<br />

SC26-4929<br />

DFSMS/MVS V1R5 DFSMShsm Implementing <strong>and</strong> Customizing, SH21-1078<br />

DFSMS/MVS V1R5 DFSMShsm Managing Your Own Data, SH21-1077<br />

DFSMS/MVS V1R5 DFSMShsm Storage Administration Guide, SH21-1076<br />

DFSMS/MVS V1R5 DFSMShsm Storage Administration Reference,<br />

SH21-1075<br />

DFSMS/MVS V1R5 Installation Exits, SC26-4908<br />

© Copyright <strong>IBM</strong> Corp. 1999 119


120 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

DFSMS/MVS V1R5 Implementing System-Managed Storage, SC26-3123<br />

DFSMS/MVS V1R5 Managing <strong>Catalog</strong>s, SC26-4914<br />

DFSMS/MVS V1R5 Macro Instructions for Data Sets, SC26-4913<br />

DFSMS/MVS V1R5 Using Data Sets, SC26-4922<br />

DFSMS/MVS V1R5 Planning for Installation, SC26-4919<br />

Integrated <strong>Catalog</strong> Forward Recovery Utility Program Description/Operations,<br />

SH20-6952<br />

OS/390 V2R7.0 MVS Initialization <strong>and</strong> Tuning Guide, SC28-1751<br />

OS/390 V2R7.0 MVS Initialization <strong>and</strong> Tuning Reference, SC28-1752<br />

OS/390 V2R7.0 MVS Setting Up a Sysplex, GC28-1779<br />

OS/390 V2R7.0 MVS Programming: Sysplex Services Reference, GC28-1772<br />

OS/390 V2R7.0 MVS System Comm<strong>and</strong>s, GC28-1781<br />

OS/390 V2R7.0 MVS System <strong>Management</strong> Facilities (SMF), GC28-1783<br />

OS/390 V2R7.0 MVS System Messages, Vol 1 (ABA-ASA), GC28-1784<br />

OS/390 V2R7.0 MVS System Messages, Vol 2 (ASB-EZM), GC28-1785<br />

OS/390 V2R7.0 MVS System Messages, Vol 3 (GDE-IEB), GC28-1786<br />

OS/390 V2R7.0 MVS System Messages, Vol 4 (IEC-IFD), GC28-1787<br />

OS/390 V2R7.0 MVS System Messages, Vol 5 (IGD-IZP), GC28-1788<br />

OS/390 Parallel Sysplex Recovery, GA22-7286<br />

Removing an MVS System from a Sysplex, GA22-7407<br />

S/390 PR/SM Planning Guide, GA22-7236


How to Get ITSO <strong>Redbooks</strong><br />

This section explains how both customers <strong>and</strong> <strong>IBM</strong> employees can find out about ITSO redbooks, redpieces, <strong>and</strong><br />

CD-ROMs. A form for ordering books <strong>and</strong> CD-ROMs by fax or e-mail is also provided.<br />

<strong>Redbooks</strong> Web Site http://www.redbooks.ibm.com/<br />

Search for, view, download, or order hardcopy/CD-ROM redbooks from the redbooks Web site. Also read<br />

redpieces <strong>and</strong> download additional materials (code samples or diskette/CD-ROM images) from this redbooks<br />

site.<br />

Redpieces are redbooks in progress; not all redbooks become redpieces <strong>and</strong> sometimes just a few chapters will<br />

be published this way. The intent is to get the information out much quicker than the formal publishing process<br />

allows.<br />

E-mail Orders<br />

Send orders by e-mail including information from the redbooks fax order form to:<br />

In United States<br />

Outside North America<br />

Telephone Orders<br />

United States (toll free)<br />

Canada (toll free)<br />

Outside North America<br />

Fax Orders<br />

United States (toll free)<br />

Canada<br />

Outside North America<br />

e-mail address<br />

usib6fpl@ibmmail.com<br />

Contact information is in the “How to Order” section at this site:<br />

http://www.elink.ibmlink.ibm.com/pbl/pbl/<br />

1-800-879-2755<br />

1-800-<strong>IBM</strong>-4YOU<br />

Country coordinator phone number is in the “How to Order” section at<br />

this site:<br />

http://www.elink.ibmlink.ibm.com/pbl/pbl/<br />

This information was current at the time of publication, but is continually subject to change. The latest information<br />

may be found at the redbooks Web site.<br />

<strong>IBM</strong> Intranet for Employees<br />

1-800-445-9269<br />

1-403-267-4455<br />

Fax phone number is in the “How to Order” section at this site:<br />

http://www.elink.ibmlink.ibm.com/pbl/pbl/<br />

<strong>IBM</strong> employees may register for information on workshops, residencies, <strong>and</strong> redbooks by accessing the <strong>IBM</strong><br />

Intranet Web site at http://w3.itso.ibm.com/ <strong>and</strong> clicking the ITSO Mailing List button. Look in the Materials<br />

repository for workshops, presentations, papers, <strong>and</strong> Web pages developed <strong>and</strong> written by the ITSO technical<br />

professionals; click the Additional Materials button. Employees may access MyNews at http://w3.ibm.com/ for<br />

redbook, residency, <strong>and</strong> workshop announcements.<br />

© Copyright <strong>IBM</strong> Corp. 1999 121


<strong>IBM</strong> Redbook Fax Order Form<br />

Please send me the following:<br />

Title Order Number Quantity<br />

First name Last name<br />

Company<br />

Address<br />

City Postal code<br />

Telephone number Telefax number VAT number<br />

Invoice to customer number<br />

Credit card number<br />

We accept American Express, Diners, Eurocard, Master Card, <strong>and</strong> Visa. Payment by credit card not<br />

available in all countries. Signature m<strong>and</strong>atory for credit card payment.<br />

122 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

Country<br />

Credit card expiration date Card issued to<br />

Signature


List of Abbreviations<br />

AMS Access method services<br />

BCS Basic catalog structure<br />

CAS <strong>Catalog</strong> address space<br />

CCW Channel comm<strong>and</strong> word<br />

CDSC <strong>Catalog</strong> data space cache<br />

CF Coupling facility<br />

CFRM Coupling facility resource management<br />

CPU Central processing unit<br />

CSI <strong>Catalog</strong> search interface<br />

DASD Direct access storage device<br />

ECS <strong>Enhanced</strong> catalog sharing<br />

GDG Generation data group<br />

GDS Generation data set<br />

GRS Global resource serialization<br />

GTF Generalized trace facility<br />

<strong>IBM</strong> International Business Machines Corporation<br />

ICF Integrated catalog facility<br />

IOS Input-output supervisor<br />

IPL Initial program load<br />

ISC In-storage cache<br />

ITSO International Technical Support Organization<br />

KSDS Key-sequenced data set<br />

LLA Library lookaside<br />

LPA Link pack area<br />

NVR Non-VSAM volume record<br />

PR/SM Processor Resource/Systems Manager<br />

SMF System management facilities<br />

SMS Storage <strong>Management</strong> Subsystem<br />

SVC Supervisor call<br />

VLF Virtual lookaside facility<br />

VSAM Virtual Storage Access Method<br />

VTOC Volume table of contents<br />

VVDS VSAM volume data set<br />

VVR VSAM volume record<br />

© Copyright <strong>IBM</strong> Corp. 1999 123


124 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong>


Index<br />

Symbols<br />

&LELEVEL 20, 33<br />

A<br />

alias<br />

DFSMSdss restore 62<br />

ALIASLEVEL 41<br />

Allocating <strong>Catalog</strong>s to the CAS 36<br />

ALTER 63, 70<br />

AMS<br />

ALTER 28, 40, 63<br />

DEFINE 29, 32<br />

DELETE TRUENAME 69<br />

DIAGNOSE 64, 72<br />

EXAMINE 69<br />

EXPORT 59, 66<br />

IMPORT 63, 66<br />

LOCK 61, 63<br />

UNLOCK 61<br />

assembler programs 83<br />

AUTOADD 29, 45<br />

restart 30<br />

system recognition of 29<br />

AutoAdd 39<br />

Automatic Add 29<br />

B<br />

backup<br />

aliases 57<br />

backup copy storage media 57<br />

BCS 57<br />

Integrated <strong>Catalog</strong> Forward Recovery Utility 58<br />

tape volume catalog 57<br />

VVDS 57<br />

backup copy numbers 58<br />

backup copy of catalog 54<br />

backup frequency 53, 58<br />

backup technique 54<br />

BCS 2<br />

checking for missing updates 64<br />

comparing 72<br />

creation 2<br />

function 2<br />

portable copy used by ICFRU 58<br />

synchronization 70<br />

VSAM information 2<br />

C<br />

Cache Structure Description 16<br />

CAS connection 19<br />

CAS disconnection 19<br />

full 17<br />

integrity VVR 17<br />

storage required 17<br />

Cache Structure Sizing 17<br />

© Copyright <strong>IBM</strong> Corp. 1999 125


catalog<br />

Access Method Services Export 54<br />

accessing 4<br />

altering to ECSHARING 40<br />

backup creation 54<br />

DFSMSdss full volume dump 56<br />

DFSMSdss logical dump 55<br />

DFSMShsm 57<br />

error symptoms 77<br />

monitoring sharing status 46<br />

moving to another volume 58<br />

recovery of broken 61<br />

recovery techniques 61<br />

reorganization 62<br />

RESERVE 8<br />

sharing problems 77<br />

structural error 61<br />

structural integrity 69<br />

utility actions 61<br />

when to recover 61<br />

<strong>Catalog</strong> Address Space 5<br />

abends 79<br />

activating maintenance 45<br />

automatic add 29<br />

control block location 6<br />

controlling 36<br />

enhanced catalog sharing 44<br />

controlling caching status 38<br />

controlling current settings 41<br />

controlling service tasks 44<br />

controlling the allocation status 40<br />

controlling the sharing status 39<br />

definitions 35<br />

determining service level of modules 42<br />

FMID 41<br />

function 6<br />

hang 79<br />

integrity VVR 9<br />

modifying current CAS options 41<br />

monitoring performance 47<br />

performance statistics 42<br />

restarting 45<br />

status 37<br />

status messages 39<br />

supervisor call 5<br />

user waiting for 79<br />

virtual storage 6<br />

<strong>Catalog</strong> data space cache 6<br />

<strong>Catalog</strong> Search Interface 52<br />

implementation 87<br />

catalog structure 2<br />

BCS 2<br />

VVDS 2<br />

CATMAX 36, 41<br />

CDSC 6, 35, 38<br />

CF Connection Status for ECS 46<br />

CF structure connection 26<br />

CFRM Policy 24<br />

activating 25<br />

recommended buffer 24<br />

126 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong>


size 24<br />

Channel Comm<strong>and</strong> Word 8<br />

CLPA 45<br />

COFVLFxx 35<br />

COMPAREDD 72<br />

COMPAREDS 72<br />

Connect Failure status 26<br />

coupling facility 10<br />

Coupling Facility Structure 12<br />

CFRM policy 12<br />

connection 12<br />

Disconnection 12<br />

persistence 12<br />

CSI 52, 83<br />

performance benefits 85<br />

CVOL 1<br />

D<br />

Data 17<br />

data set 2<br />

BCS information 2<br />

VTOC information 3<br />

VVDS information 2<br />

DATATEST 69<br />

DEFINE 70<br />

defining aliases 13<br />

DELETE 70<br />

DELETE RECOVERY 41<br />

DELETE TRUENAME 69<br />

DELETE UCAT/VVDS WARNING 41<br />

DELETE USERCATALOG FORCE 41<br />

DEVSERV 78<br />

DFSMSdss 55, 56, 58, 74<br />

fully qualified name 62<br />

DFSMShsm 57, 58, 59<br />

DFSORT 65<br />

DIAGNOSE 64, 72<br />

diagnosis tools 76<br />

Directory 17<br />

DUMP 80<br />

SDATA options 80<br />

E<br />

ECS 10<br />

ECS <strong>and</strong> non-ECS interaction 20<br />

ECS eligible 10<br />

ECSHARING 10<br />

ECSHR attribute 28<br />

eligible for ECS 26<br />

ENABLEALL 45<br />

<strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> 10<br />

controlling status 44<br />

determining catalogs 16<br />

failure 11<br />

integrity 11<br />

integrity VVR 10<br />

limitation 16<br />

lower level systems 15<br />

maximum catalogs 16<br />

127


performance 11<br />

performance statistics 42<br />

PTF 15<br />

statistics 47<br />

SYSIGGCAS_ECS 16<br />

sysplex considerations 45<br />

verifying the status 27<br />

VVDS mode 11<br />

EXAMINE 69<br />

EXPORT 58, 59, 66<br />

extended alias reference 33<br />

Extended Alias Support 13<br />

catalog resolution 34<br />

catalogs 20<br />

data set names 20<br />

name resolution 15<br />

system symbols 30<br />

F<br />

Fixed controls 17<br />

G<br />

GDG 59<br />

GDS 59<br />

generalized trace facility 85<br />

generation data group 59<br />

generation data set 59<br />

generation numbers 62<br />

global symbol 31<br />

GRS 10<br />

star mode 10<br />

H<br />

hardware configuration definition 77<br />

HCD 77, 78<br />

I<br />

ICFRRAP 66<br />

ICFRRSV 66<br />

ICFRU 58, 66<br />

IEASYMxx 20, 30, 33<br />

IEC377I 26<br />

IEFBR14 49<br />

IGG.CATLOCK 62, 64<br />

IGGCSI00 84<br />

IGGCSILK 85<br />

IGGCSIRX 85<br />

IGGCSIVG 85<br />

IGGCSIVS 85<br />

IMBED 15, 62<br />

IMPORT 63, 66<br />

INDEXTEST 69<br />

Indirect Volume Serial Support 30<br />

In-storage catalog cache 6<br />

Integrated <strong>Catalog</strong> Forward Recovery Utility 66<br />

integrity exposures 6<br />

integrity VVR 9<br />

ISC 6, 38<br />

128 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong>


IXLCACHE 51<br />

IXLCONN 26<br />

IXLSTR.SYSIGGCAS_ECS 17<br />

L<br />

link pack area 45<br />

LISTCAT 64<br />

NONVSAM 64<br />

LLA refresh 45<br />

LOADxx 35<br />

local symbol 31<br />

LOCK 61<br />

logical dump 55<br />

M<br />

master address space 36<br />

master catalog availability 58<br />

master catalog copies 58<br />

master catalog opening 36<br />

master catalog recovery 61<br />

messages 108<br />

MLPA 45<br />

MODIFY CATALOG<br />

complete parameter list 101<br />

N<br />

Non-ECS catalog 11<br />

non-VSAM<br />

BCS information 3<br />

non-SMS BCS information 3<br />

non-SMS VTOC information 3<br />

non-SMS VVDS information 3<br />

VTOC information 3<br />

VVDS information 3<br />

number of backup copies 58<br />

NVR 2<br />

O<br />

Operational Issues 19<br />

P<br />

Parallel Sysplex 9<br />

performance figures 47<br />

portable backup copy 61, 63, 66<br />

Program Temporary Fix 15<br />

R<br />

recovery 61<br />

master catalogs 63<br />

missing updates 64<br />

moving catalogs to other volumes 63<br />

post recovery updates 64<br />

preventing catalog activity 63<br />

user catalogs 63<br />

ReferringtoanExtendedAlias 33<br />

REPLICATE 15, 62<br />

129


Resource Access Control Facility 17<br />

facility class 17<br />

REXX 83<br />

S<br />

SDATA 80<br />

Security Considerations 17<br />

SETXCF 25<br />

shared DASD 77<br />

SHAREOPTION 77<br />

SHAREOPTIONS 7<br />

default 7<br />

system 7<br />

systems 7<br />

user programs 8<br />

SMF 65, 66<br />

TYPE 61 65<br />

TYPE 65 65<br />

TYPE 66 65<br />

SMF type 36 62<br />

SMFPRMxx 65<br />

st<strong>and</strong>-alone restore 62<br />

SYMBOLICRELATE 13, 32<br />

SYMDEF 20<br />

synchronization error repairing 74<br />

synchronization errors 70, 72<br />

SYS1.LINKLIB 84<br />

SYS1.PARMLIB 20, 65<br />

SYSCAT 35<br />

SYSDEF 20<br />

SYSIGGCAS_ECS 16, 25, 27, 35<br />

sysplex considerations 45<br />

system symbol variables 30<br />

T<br />

tape volume catalog 7<br />

backup 57<br />

storing backup copy 57<br />

tape volume catalogs<br />

backup considerations 59<br />

TASKMAX 41<br />

TOD clock 9<br />

U<br />

UCB 78<br />

UCB common segment 78<br />

unexpected 19<br />

UNLOCK 61<br />

user catalog copies 58<br />

V<br />

virtual lookaside facility 35<br />

VLF 36, 38<br />

VOLCAT 7<br />

content 7<br />

General 7<br />

naming conventions 7<br />

sharing <strong>and</strong> protecting 7<br />

130 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong>


Specific 7<br />

structure 7<br />

VTOC<br />

synchronization 70<br />

VSAM information 3<br />

VVDS<br />

backup 57<br />

checking for missing updates 64<br />

comparing 72<br />

description 2<br />

function 2<br />

synchronization 70<br />

VSAM information 2<br />

VVDS DEQs 42<br />

VVDS I/O 42, 49<br />

VVDS mode 11, 39, 42, 46, 48, 50, 78<br />

VVDS RESERVE Shr 49, 51<br />

VVDS RESERVEs 42<br />

VVR 2<br />

131


132 <strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong>


ITSO Redbook Evaluation<br />

<strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong><br />

SG24-5594-00<br />

Your feedback is very important to help us maintain the quality of ITSO redbooks. Please complete this<br />

questionnaire <strong>and</strong> return it using one of the following methods:<br />

Use the online evaluation form found at http://www.redbooks.ibm.com<br />

Fax this form to: USA International Access Code + 1 914 432 8264<br />

Send your comments in an Internet note to redbook@us.ibm.com<br />

Which of the following best describes you?<br />

_ Customer _ Business Partner _ Solution Developer _ <strong>IBM</strong> employee<br />

_ None of the above<br />

Please rate your overall satisfaction with this book using the scale:<br />

(1 = very good, 2 = good, 3 = average, 4 = poor, 5 = very poor)<br />

Overall Satisfaction __________<br />

Please answer the following questions:<br />

Was this redbook published in time for your needs? Yes___ No___<br />

If no, please explain:<br />

What other redbooks would you like to see published?<br />

Comments/Suggestions: (THANK YOU FOR YOUR FEEDBACK!)<br />

© Copyright <strong>IBM</strong> Corp. 1999 133


SG24-5594-00<br />

Printed in the U.S.A.<br />

<strong>Enhanced</strong> <strong>Catalog</strong> <strong>Sharing</strong> <strong>and</strong> <strong>Management</strong> SG24-5594-00

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!