SPARTA News
August 2018
SPARTA President’s Corner
contributed by Randy Springs
As we enter the dog days of August, I always envy workers in France who often get the entire month off for vacation. I usually find it hard to take off five consecutive days. However, I am glad to be working in a job that is technically challenging but not too demanding physically.
Our speaker this month will be Dr. William Shelden, Jr. co-founder of PerfTechPro. He will be presenting on their zAnalytics software package which is a capacity planning and performance measurement tool. Bill Hart will be at our meeting to represent the company.
Your SPARTA group still needs a volunteer to replace Pam Tant as treasurer. This position would involve about two hours per month. Please consider serving and talk to me about the position.
Please plan to join your colleagues for barbecue, networking, and education on Tuesday, August 7 at 6:15 p.m. at our usual LabCorp location.
Randy Springs
BB&T
Future Speakers
(subject to change)
August 7, 2018 - zAnalytics® by William L. Shelden, Jr. of PerfTechPro
Sept. 11, 2018 (Special Date) - SHARE Conference Report by Ed Webb of SAS
We need ideas and volunteers for future speakers. Presentations don’t have to be fancy, just informative and interesting. Even a 5 or 10 minute talk can start an interesting interaction. Contact Ron Pimblett by phone as noted below.
2018-2019 SPARTA
Board of Directors
Randy Springs - President
BB&T (919) 745-5241
3200 Beechleaf Court, Suite 300
Raleigh, NC 27604
Ron Pimblett - Vice President
MDI Data Systems
Land line 613 599 6970
Mobile 613 981 6919
190 Guelph Private
Kanata, ON K2T 0J7
Chris Blackshire - Secretary
Retired (Dell, Perot Systems, Nortel) (919) nnn-nnnn
street
Durham, NC 27713
Randy Springs - (Acting) Treasurer
BB&T (919) 745-5241
see Randy
Springs earlier
Ed Webb - Communications Director
SAS Institute Inc. 919-531-4162
SAS Campus Drive
Cary, NC 27513
Mike Lockey - Web Master
Guilford Co. Information Services 336-641-6235
201 N. Eugene St.
Greensboro, NC 27401
Meetings
Meetings are scheduled for the first Tuesday evening of each month (except no meeting in January), with optional dinner at 6:15 p.m. and the meeting beginning at 7:00 p.m.
These monthly meetings usually are held at
LabCorp’s Center for Molecular Biology and Pathology (CMBP) near
the Research Triangle Park (see last page). Take I-40 to Miami
Boulevard and go north. Turn right onto T.W. Alexander
Drive. Go about a mile or so. Then turn right into LabCorp
complex and turn Left to the CMBP Building (1912 T.W. Alexander Drive). In the lobby, sign
in as a visitor to see Bill Johnson. Bill will escort you to
the conference room.
Call for Articles
If you have any ideas for speakers,
presentations, newsletter articles, or are interested in taking
part in a presentation, PLEASE contact one of the Board of
Directors with your suggestions.
Newsletter e-Mailings
The SPARTA policy is to e-mail a monthly notice to our SPARTA-RTP Group. The newsletter is posted to the website about five (5) days before each meeting so you can prepare. The SPARTA-RTP Group is maintained by Chris Blackshire; if you have corrections or problems receiving your meeting notice, contact Chris at chrisbl@nc.rr.com.
January 2018 “CBT Tape” Shareware Online
The directory and files from the latest CBT tape
V495 (dated January 15, 2018) are available from www.cbttape.org.
If you need help obtaining one or more files,
contact Ed Webb at SAS (see Board of Director’s list for contact
info).
Minutes of the July 10, 2018 Meeting
• The meeting was called to order at 7:00 PM by Chris Blackshire standing in for Randy Springs, the SPARTA President.
• The meeting was held at a LabCorp conference room in RTP, N.C.
• Fourteen (14) people were present of which Thirteen (13) are 2017/2018 paid members.
• Everyone introduced themselves, told where they worked, and briefly described their job functions or their job hunting challenges.
• The presentation was given first to meet the presenter's schedule - see
the presentation below (7:10-8:05 PM).
OLD BUSINESS
• The minutes of the May 1, 2018 meeting as published in the June 2018 Newsletter were approved.
• The May 31, 2018 Treasurer's report was not given. Randy will give it at the August meeting. Duane Reaugh will check on the DTS corporate sponsorship payment.
• Call For Articles: Articles are needed for this newsletter. If you would like to write an article for this newsletter, please contact Ed Webb. Keep in mind that you don't really need to write the article, it can be an article that you read that you would like to share with the membership.
• The SPARTA Web page is available. To access the SPARTA Web page, point your Web browser to this site: http://www.spartanc.org. Please send any comments or suggestions about the Web page to Mike Lockey. Be sure to check the Web page every once in a while to see any new or changed information.
• Chris reminded everyone to leave the LabCorp conference room clean.
• Future Speakers and Topics (subject to change based on internal politics, budget, the weather):
Date |
Company |
Speaker |
Topic |
August 7, 2018 |
TBD |
TBD |
TBD |
September 11, 2018 |
SAS |
Ed Webb |
SHARE St. Louis Conference Report |
October 2, 2018 |
Rocket Software |
Mitch Hoffman |
z/OS Mainframe |
November 6, 2018 |
Watson Walker |
Cheryl or Frank |
z/OS Performance/Metrics |
December 4, 2018 |
IBM |
Shalawn King |
IBM Z Cloud Portfolio |
If you have suggestions about speakers and topics, contact Ron Pimblett.
• The next SPARTA monthly meeting will be on Tuesday, August 10,
2018 at LabCorp in RTP.
• Food for the August 10 meeting will be BarBQ.
• The 2018 dues are due ($30) starting in February 2018. Please pay Randy Springs.
• Thanks to LabCorp and Bill Johnson for hosting the meeting.
• There are currently 79 people on the SPARTA-RTP e-mail list.
• Send any e-mail address changes to Chris
Blackshire so he can update the SPARTA-RTP Listserv. You will be
added by the moderator (Chris = SPARTA-RTP-owner@yahoogroups.com) sending you an invitation to Join
the list.
• No update from Randy Springs on the SPARTA website connection to LinkedIn.
• Chris is in the process of putting a package together for Brad Carson, Tommy Thomas, and John Bryan's SPARTA contributions and death information on the web page under a new Emeritus section.
• Randy Springs is looking for a new Treasurer volunteer. He projects about 3 hours per month is needed.
-The treasurer position duties are:
--Collect dues and pay expenses at each monthly meeting.
--Deposit income at the BB&T bank monthly.
--Make an updated monthly excel income-expense list for the monthly
newsletter.
--Give a Treasurer report at each meeting.
--One Time: Be added to the checking account authorization.
-Contact Randy Springs if you are interested.
• No update about whether SPARTA needs to change the website to HTTPS access. A security certificate would be $75 per year from GoDaddy.
Randy Springs will work with Mike Lockey to research if we need this option and how to change it.
• No status update from Bill Johnson on whether we can continue to use the LabCorp
conference room after the LabCorp data center is moved out of the building
that we meet in. The move is scheduled sometime between July and November
and Bill Johnson may not have access to this building after the move. That
means we may have to find a new meeting place.
NEW BUSINESS
• None.
• The Business portion of the meeting ended about 7:40 PM.
Presentation
Presentation Topic: CICS and IPCS
By Andre Clark of IBM Staff CICS L2 Support
•
Agenda
• Dump types
• Some basic IPCS commands
• CICS Verbexit DFHPDxxx
• Common System Area (CSA)
• Storage Manager (SM)
• Transaction Manager (XM)
• Dispatcher (DS)
• Kernel (KE)
• Loader domain (LD)
• Program domain (PG)
• Lock Manager (LM)
• Enqueue domain (NQ)
• Application domain (AP)
• Task Summary (TK)
• Trace (TR)
• IPCS Panels
- CICS Primary Menu - 0 Defaults > Default Menu
- IPCS Primary Menu - 6 Command > Command Menu
• Presentation Access - See SPARTA webpage for the complete presentation. Or check out the outline of the presentation later in this newsletter.
•
Contact Info:
Andre Clark of IBM
IBM Staff CICS L2 Support
Email: acclark@us.ibm.com
Ed Addison of IBM
CICS Level II STSM
Work: (919) 254-6515
Email: eaddison@us.ibm.com
• The July 10, 2018 monthly meeting ended about 9:05 PM.
Treasurer’s Report for July 2018
contributed by Randy Springs
The balance in the account is $1004.09 as of July 31, 2018.
SPARTA Financial Report
5/01/2018 through 07/31/2018
INCOME |
|
Opening Balance 7/1/2018 |
981.35 |
Total Deposits |
|
Food money donated |
45.00 |
Dues |
60.00 |
Sponsorships |
0.00 |
TOTAL INCOME |
$105.00 |
|
|
EXPENSES |
|
Food |
82.26 |
Web Site |
0.00 |
Petty Cash |
0.00 |
Bank Service Charges |
0.00 |
TOTAL EXPENSE |
$82.26 |
|
|
BANK BALANCE |
855.35 |
PETTY CASH on hand |
148.74 |
TOTAL CASH |
$1004.09 |
Items of Interest
SPARTA Schedule and Menu for 2018
contributed by Chris Blackshire
August 7, 2018 - BarBQ
September 11, 2018 - Pizza (date changed because of the Labor Day holiday)
October 2, 2018 - Fried chicken
November 6, 2018 - Subs
December 4, 2018 - BarBQ
Follow SHARE in St. Louis with the SHARE Mobile App
Contributed By Ed Webb
Follow sessions at SHARE in St. Louis, Missouri August 12-17, 2018
with the SHARE Mobile App https://event.share.org/mobile-app>.
Explore the updated, desktop online agenda for access to technical education sessions that span topics such as Pervasive Encryption, Cloud Technology in the Enterprise, Data Privacy, API Economy and IBM Z(r) topics.
Be prepared to participate in 2019 at one of these announced venues:
SHARE Winter 2019: Phoenix, AZ March 10-15
SHARE Summer 2019: Pittsburgh, PA August 4-9
You can always see the future SHARE schedule here.
Saving with Data Set Encryption
Contributed By Ed Webb
"The z/OS OS is known for its world-class security. It needs to be secure because some of the world’s most valuable data is stored on IBM Z. As we consider the newest z/OS offering from IBM, let’s start with some background about security best practices and the current capabilities behind z/OS.
Good security practices should already be a part of your environment. Clear policies, regularly applied and clearly laid out audit processes, identity management, access controls and key management are necessary components of data security.
All of these are enabled by the powerful capabilities in z/OS, and that won’t change. Encryption is another important element in your data protection strategy—and z/OS has recently been enhanced to strengthen that component. One example is data set encryption, which moves encryption functionality deeper into the fundamental data management components of the OS."
Read the entire explanation of data set encryption here.
12 Qs to Help Measure Mainframe Quality
Contributed By Ed Webb
"Organizations should work to continuously improve quality, velocity and efficiency together, but there's no denying quality is the principal focus of mainframe shops, as a recent Compuware-commissioned Forrester Consulting study found. But even though there is a large focus on quality in mainframe application development, it's under threat today for various reasons.”
Learn about managing the 2 major threats: mainframe skills loss, and the push to do more faster in this
Enterprise Executive article.
Don't Panic: It's On the Mainframe - Financial Services and Cloud Computing
Contributed By Ed Webb
"The Bank of England, for example, is reportedly considering a test on the resilience of banks this year, exploring what would happen if cloud access were interrupted. The United States Office of the Comptroller of the Currency is also analyzing the relationships between banks and third-party vendors, including cloud providers.
These concerns are partly caused by the involvement of Microsoft, Amazon, Google and others, who often act as the providers of these cloud systems. The idea of third-party tech titans taking control of such sensitive data could seem a worrying prospect to financial service regulators, as things could feel as though they were slipping out of their control. However, they need not panic. In reality, there are many ways banks can incorporate cloud technology without ripping out their trusted and secure mainframe and midrange systems."
Check out this
Enterprise Systems Media report.
Humor
Humorous Thoughts
Contributed by Ed Webb
• Happiness is not doing what you like; it's liking what you do.
• Most of the stuff people worry about never happens.
• If you look like your passport photo, you need the trip.
• Accept that some days you're the pigeon, and some days you're the statue.
• A truly happy person is one who can enjoy the scenery on a detour.
• You may be only one person in the world, but you may also be the world to one person.
Presentation
•
Agenda
• Dump types
• Some basic IPCS commands
• CICS Verbexit DFHPDxxx
• Common System Area (CSA)
• Storage Manager (SM)
• Transaction Manager (XM)
• Dispatcher (DS)
• Kernel (KE)
• Loader domain (LD)
• Program domain (PG)
• Lock Manager (LM)
• Enqueue domain (NQ)
• Application domain (AP)
• Task Summary (TK)
• Trace (TR)
• IPCS Panels
- CICS Primary Menu - 0 Defaults > Default Menu
- IPCS Primary Menu - 6 Command > Command Menu
• Some Useful IPCS Commands
- CBFORMAT (CBF) - Displays a formatted control block.
- - CBF RTCT - Formats the Recovery Termination Control Table.
- - - Can be used to see what address spaces are included in the dump.
- - CBF address STR(control block name) e.g. ipcbf12345678 str(rtm2wa)
- EQUATE (EQ) - Assigns a name to the current address.
- FIND (F) - Locate data in a dump.
- - F 'charstring' NOB (NOB indicates No Break for uninterrupted
searching).
- - F x'datastring' NOB - Locates a hexadecimal string.
- LIST (L) - Display storage at an address.
- - Laddr LEN(x'1000') - List x'1000'bytes starting at the specified
address.
- - Laddr+100 - List the specified address +x'100'.
- - LSLIPTRAP - List the slip trap for which a SLIP dump was taken.
- - Laddr INSTR - Displays Assembler instructions at the specified address.
- - - e.g. ipl23d00 l(x'20')i
- LISTTOD (LTOD) - Convert TOD clock to corresponding timestamps.
- - e.g. ip ltod C6BC0E414486E884
- - Top STCK is formatted GMT time without being adjusted for time zone or
leap seconds.
- - Middle UTC has been adjusted for leap seconds.
- - Local time has been adjusted for both time zone and leap seconds.
- HELP - Provides a list of IPCS commands and subcommands.
- - HELP subcommand e.g. ip help run chain
- LPAMAP - Display LPA module summary.
- OPCODE - Converts a hex instruction to its corresponding Assembler
instruction.
- RUNCHAIN (RUNC) - Format a chain of control blocks.
- - e.g. ip runc addr(12345678) len(x'20') link(x'10') chain(99) display
verify
- - - ADDR - Address of first block in chain.
- - - LEN - Length of storage to be displayed
- - - LINK - Offset in each block for the next block on the chain.
- - - CHAIN - Number of control blocks to chain; default is 999.
- SELECT - Displays address space/jobname information.
- - ALL
- - ASID (x'...') or ASID (x'...',x'...') for multiple address spaces.
- STATUS (ST) - Provides system status; includes dump title.
- - STATUS SYSTEM (ST SYS) - Includes time dump was taken.
- - STATUS REGS (ST REGS) - Formats PSW/registers when SLIP trap springs.
- SUMMARY FORMAT (Summ Format) - Formats TCBs and related information.
- - SUMFOSUM ASID(...) TCB(....) - Formats a summary of a TCB's RB structure
- SYSTRACE - Format MVS system trace table.
- - TIME(LOCAL)
- - PERFDATA - Help identify specific trace entries that are using CPU time
- - - e.g. systrace time(local) asid(x'101') tcb(x'9F8220')
- VERBEXIT (VERBX) - User-supplied VERB exits - CICS, DB2, LE/370 etc.
- - DFHPDxxx (where 'xxx' is the CICS release e.g.
660,670,680,690,700,710).
- - VERBX MTRACE - Formats the most recent console messages.
- - VERBX LOGDATA - Formats the most recent LOGREC entries.
- WHERE (W) - Identify an area of storage.
- - e.g. Where 0E200200:
• Status Commands
- Status (ST)
- - Displays the dump title:
- - - Dump Title: CICS DUMP: SYSTEM=IYNXS CODE=XM0002 ID=64/0064
- - The title tells you who requested the dump:
- - - CICS, SLIP, console dump, or another product.
- - Dump title can give clues about the health of CICS or error information
that will be available.
- Status System (ST SYS)
- - Displays the time the dump was requested, and the difference between
Local time and GMT
• What address spaces are included?
- Cbf rtct
- - Displays the ASIDs that are included in the dump:
- - - SDAS SDF4 SDF5
- - - 001 - 0144 - 80 - 00
- - - 002 - 016C - 80 - 00
- Select all formats all jobs and assigned address spaces.
- Select ASID(x'144',x'16C') displays selected ASIDs and the associated
jobnames
- When multiple address spaces are dumped, can limit output to just one job
with the job=parm:
- - verbx dfhpd700 'ds=1,job=jobname'
• Browsing the dump
- Option 1 on the IPCS Menu Panel.
- Addresses that begin with an alphabetic character must be preceded by a 0
or followed by a period(.)
- Indirect addressing.
- - % - Displays storage at a selected 24 bit address
- - ? - Displays storage at a selected 31 bit address
- - ! - Displays storage at a selected 64 bit address
• CICS Verbexit
- Verbx dfhpdxxx where 'xxx' is the CICS release:
- - 670-CICS TS 4.2 (End of Service September 30 2018)
- - 680-CICS TS 5.1
- - 690-CICS TS 5.2
- - 700-CICS TS 5.3
- - 710-CICS TS 5.4
- When formatting information from a CICS domain or component, there are
normally three levels of detail available:
- - 1 - Summary only
- - 2 - Full control block formatting
- - 3 - Both Summary and control blocks
• CICS Verbexit options
Keyword Functional area
AI = 0|2 Autoinstall Model Manager
AP = 0|1|2|3 Application Domain APS=<TASKID=nnnnn>
AU = 0|2 CICS affinities utility
BA = 0|1|2|3 Business application manager
BR = 0|1|2|3 3270 bridge
CC = 0|2 CICS catalog domain
CP = 0|2 Common Programming Interface
CQ = 0|1|2 Auto install model manager
CSA = 0|2 CICS Common System Area
DB2 = 0|1|2|3 The CICS DB2 interface
DD = 0|1|2|3 DirectoryDomain
DH = 0|1|2|3 Document handling domain
DLI = 0|2 CICS DL/I Interface
DM = 0|1|2|3 Domain Manager
DP = 0|1|2|3 Debug Profiles manager (630)
DS = 0|1|2|3 Dispatcher Domain
DU = 0|2 Dump Domain
EC = 0|1|2|3 Event Capture domain (660)
EJ = 0|1 Enterprise JAVA
EM = 0|1|2|3 Event manager domain for BTS
EP = 0|1|2|3 Event Processing domain (660)
FCP = 0|2 File Control Program
FT = 0|1|2|3 CICS WEB Interface
ICP = 0|2 Interval Control Program
IE = 0|1|2|3 IPECIDomain
II = 0|1|2|3 IIOP
IND = 0|1|2|3 Page number indexes for output
IS = 0|1|2|3 IP Interconnectivity domain (650)
JCP = 0|2 Journal Control Program
KE = 0|1|2|3 CICS Kernel
LD = 0|1|2|3 Loader Domain
LG = 0|1|2|3 Logger Domain
LM = 0|1|2|3 Lock Manager domain
ME = 0|2 Message domain
ML = 0|1|2|3 Markup Language domain (660)
MN = 0|1|2|3 Monitoring domain
MQ = 0|1|2|3 CICS-MQinterface (650)
MRO = 0|2 CICS Multi-Region Operation
NQ = 0|1|2|3 Enqueue Manager
OT = 0|1|2|3 Object Transaction Domain
PA = 0|2 Parameter manager domain
PCP = 0|2 Program Control Program
PCT = 0|2 Program Control Table
PG = 0|1|2|3 Program Manager Domain
PI = 0|1|2|3 Pipeline Domain (640)
PR = 0|2 Partner Resource management
PT = 0|1|2|3 Partner Domain
RD = 0|2 Resource definition manager
RL = 0|1|2|3 Resource Lifecycle domain (660)
RM = 0|2 Recovery Management
RS = 0|1|2|3 Region Status domain (660)
RX = 0|1|2|3 Recoverable EXCI domain
RZ = 0|1|2|3 Request Streams
SH = 0|1 Scheduler services domain for BTS
SJ = 0|1|2|3 JVMDomain
SM = 0|1|2|3 Storage Manager domain
SO = 0|1|2|3 Sockets domain
SSA = 0|2 StaticStorage Areas
ST = 0|1|2|3 Statisticsdomain
SZ = 0|1 Front End Programming Interface
TCP = 0|1|2|3 Terminal Control Program
TDP = 0|1|2|3 Transient Data Program
TI = 0|1|2|3 Timer domain
TMP = 0|2 Table Manager Program
TR = 0|1|2|3 Trace domain TRS=<trace selection parameters>
TS = 0|1|2|3 Temporary Storage Program
UEH = 0|2 User Exit Handler
US = 0|1|2|3 User Domain
WB = 0|1|2 The web interface
W2 = 0|1|2|3 Web 2.0 domain (660)
XM = 0|1|2|3 The transaction manager
XRF = 0|2 The extended recovery facility
XS = 0|1 Security Domain
1 - Summary only
2 - Full control block formatting
3 - Both 1 and 2. If you omit the level number, it defaults to level 3 for
components that have a summary, and level 2 for those that do not.
• CSA Time of Day clock (CSA)
- The CICS CSA has a timestamp that is updated each time a task is
dispatched on the QR TCB.
- - It is also updated when an application program issues an EXEC CICS
ASKTIME request.
- This timestamp is in the form HHMMSSTF Local time, and can be found in
the CSA +x'50'.
- If CICS is hung, compare the CSATOD clock to the time of the dump to see
when a task was last
dispatched on the QR TCB.
- Verbx dfhpd700 'csa' CSA 0004E200 Common System Area
• Storage Manager (SM)
- Storage manager summaries show whether CICS is short-on-storage (SOS),
above/below the line, above bar.
- Also shows whether Storage Protection, Reentrant Program Protection, and
Transaction Isolation are active.
- Verbx dfhpd700 'sm=1'
• Transaction Manager (XM)
- Transaction manager summaries show:
- - Whether CICS is at MAXTASK:
- - Whether tasks are held for TRANCLASS reasons.
- Tasks that have been attached but queued for MAXTASK or TCLASS will not
be in the CICS Dispatcher or Kernel summaries.
- Transaction manager summaries and control blocks used to determine what
time a task was attached.
- Verbx dfhpd700 'xm=1'
• Transaction Summary (XM)
- Verbx dfhpd700 'xm=1'
• MXT Summary (XM)
- Verbx dfhpd700 'xm=1'
- MXT and TCLASS Summaries are at the end of the formatted summaries.
- - Max to the bottom of the formatted output by entering m followed by
PF8.
• TCLASS Summary (XM)
- Page backwards from the MXT Summary to see the TCLASS summary:
• Task Attach Time (XM)
- Verbx dfhpd700 'xm=3'
- FIND on the TXN address. Task attach time is in the TXN+x'50':
- IP LTOD C56197A649D40706
- Task was attached at 04:25:48.113216 Local time.
• Dispatcher (DS)
- Dispatcher summary displays:
- - Tasks currently in the system.
- - Each task's current status - running, suspended, dispatchable, etc.
- - What resources tasks are waiting for.
- The resource names are described in the CICS InfoCenter (or CICS Problem
Determination Guide).
- - What time a task suspended, and whether there is a time-out due.
- Dispatcher summaries and control blocks can be used to determine:
- - How long tasks have been running on their respective TCBs.
- - How long tasks have been dispatchable, waiting for a turn to run on a
particular TCB.
- Note: Times in the Dispatcher Summary have not been adjusted for time
zone or leap seconds.
• Dispatcher Task Summary (DS)
- Verbx dfhpd700 'ds=1'
• What time did a task become 'Running' or Dispatchable?
- Dispatcher Task Summary shows the time a task was suspended, but not what
time a task became 'Running' or 'Dispatchable'.
- - Tasks that are ready to run but the dispatcher hasn't dispatched them
yet are 'Dispatchable'.
- Dispatcher Task Summary includes the address of the Dispatcher Task Area
(DTA) control block.
- - DTA has two clock fields at +x'50'and +x'58'.
- When a task is 'Dispatchable', the DTA+X'50' contains the time the task
became dispatchable.
- - For a suspended task, DTA+X'50' is also the time the task was
suspended.
- For a running task, DTA+X'58' is within .1 second of the time the task
became 'running' (i.e.was dispatched).
• What time did a task become Running?
- Verbx dfhpd700 'ds=3'
- FIND on the DTA address to get to the formatted DTA control block. Check
the DTA +x'58':
- Ip ltod C6C676564F3AE284 will convert the time to show that the running
task became 'Running' within .1 sec of:
• What time did a task become Dispatchable?
- Verbx dfhpd700 'ds=3'
- FIND on the DTA address to get to the formatted DTA control block. Check
the DTA +x'50':
- IP LTOD C6C66DEF925B7E05 will convert the time to show that the task
became 'Dispatchable' at:
• Kernel (KE)
- Verbx dfhpd700 'ke=1'
- Task Summary
- - Includes all the tasks currently in the system.
- - Also includes a default task for each MVS TCB managed by the Kernel.
- - Shows tasks that are***Running** if the task is currently dispatched on
a TCB.
- - Shows tasks flagged with an error (when any kernel stack for the task
has been flagged with an error).
- Kernel Error Data (if applicable)
- Kernel Stacks
- Kernel Error Table Summary
- - Formats the 50 most recent errors in CICS.
• Kernel Task Summary (KE)
- Verbx dfhpd700 'ke=1'- Key fields are the Kernel number, transaction
number, transaction ID if task flagged as***Running** or in error.
- Field KE_KTCB CICS representation of the TCB at ask is running on.
• Kernel Error Table Summary (KE)
-Verbx dfhpd700 'ke=1'
- - Max to the bottom to see the Kernel Error Table summary.
- - Kernel Error Table holds a maximum of the 50 most recent errors.
- ERR_CODE is the system abend code, if any, followed by the user abend
code. (CICS abend codes begin with the letter 'A').
- Note the KE_NUM to identify errors associated with a particular kernel
task.
- - May need to check task attach times to determine if errors associated
with a kernel task are for the same task or different tasks.
• Kernel Error Data (KERRD)
- Verbx dfhpd700 'ke=1'
- If the dump is taken for an error, Kernel Error Data will be formatted
with the summary information.
- - If not, the most recent 50 errors can be found with:
- - verbx dfhpd700 'ke=2'
- - Find the error using the ERR_NUM identified in the Error Table Summary.
e.g. FIND 'number: 00000009'
- - - Note: 2 spaces between the colon and the error number.
- The dump formatter provides the raw KERRD control block which contains
PSW, registers, and error information.
- The dump formatter also formats key areas:
- - PSW and registers, together with storage in the vicinity of the PSW and
register addresses.
- - The module in control at time of error, from a CICS perspective.
- - - If the error did not occur in the controlling program, the offset
shown will be negative. i.e. FFFFFFFF
- - The execution key and space (Basespace or Subspace if Transaction
Isolation is active).
- There are two sets of PSW and Registers, CICS and MVS.
- These two save areas are different only when CICS has issued an SVC
(service request), and an abend or program check occurs during execution of
the code processing the SVC.
- - CICS PSW and registers will reflect the code that issued the SVC.
- - MVS PSW and registers will reflect the actual program check or abend.
- MVS PSW and registers will only be formatted if they are different than
the CICS PSW and registers.
- - The exception is when CICS has detected a runaway (looping) task. CICS
issues an abend 999 to terminate the task:
- - - CICS PSW and registers will point within the looping module.
- - - MVS PSW and registers will point within Kernel module DFHKETIX after
the abend SVC.
- BEAR - Breaking Event Address Register, is also formatted.
- - BEAR contains the address of the last branch instruction taken prior to
a program check or abend. (Useful for wild branch detection).
- - Formatted as Branch Event Address.
• Breaking Event Address Register (BEAR)
- Example using BEAR to diagnose a wild branch:
- - Bear points to this Branch instruction.
- - Prior to the Branch is an instruction loading the above registers.
• Kernel Stacks (KE)
- Kernel stacks show the sequence of CICS modules currently involved with a
task.
- Kernels stacks contain register save areas and working storage for each
CICS module.
• Finding the z/OS TCB address (KE)
- Often we need to find the z/OS TCB for one of the CICS TCBs:
- Verbx dfhpd700 'ke=3'
- Use the selected KE_KTCB from the Kernel Task Summary.
- FIND the formatted KTCB control blocks.
- For the selected KTCB address, KTCB+x'50' contains the address of the
z/OSTCB:- For one of the more common TCBs, like the QR, can also use the
trace domain to quickly find the TCB address:
- Verbx dfhpd700 'tr=2' then enter FIND QR
- - In later releases the z/OS TCB is formatted in the summary:
• Loader domain (LD)
- Verbx dfhpd700 'ld=1'
- Program Repertoire provides program length, use count etc.
- Program Storage Map provides a program's load point, entry point, PTF
level (if applicable).
• Program domain (PG)
- The Program domain has a Program Level control block (PLCB) that shows
the sequence of application programs, TRUEs and GLUEs that are involved
with a task.
- Verbx dfhpd700 'pg=1'
- FIND on the task number:
• Program Level summary (PG)
- The LVL 1 program, PROGRAM1, is the initial program.
- - It's environment shows EXEC indicating a normal application program.
- - PROGRAM1 issues an EXEC CICS LINK to PROGRAM2.
- The LVL 2 program is PROGRAM2.
- - PROGRAM2 issues an SQL call.
- The LVL 3 program is DFHD2EX1, running as a Task Related User Exit
(TRUE).
- PLCB summary is also useful for providing program name, length, and load
point information.
- Note: Programs listed in the LLE Summary have been loaded on behalf of
the current task. e.g. via COBOL call
• LMQUEUE - Waiting on a lock
- Verbx dfhpd700 'ds=1'
- Dispatcher domain shows that tasks are in LMQUEUE suspends, indicating
that tasks are waiting on a lock(s):
• Lock Manager (LM)
- Verbx dfhpd700 'lm=1'
- FIND on keyword 'wait' to find the Lock Wait Queue and see what
lock(s)tasks are waiting for:
- FIND on the lock name PREV to see the Allocated Locks summary and
determine what task currently owns the lock
- The address listed as the lock owner identifies a Kernel TAS control
block address.
• Identify the Lock Owner
- Format the Kernel summary and FIND on the TAS address to identify the
owning task.
- Verbx dfhpd700 'ke=1'
- Format the Dispatcher summary and find the task (using the TAS address or
the Task#), and see what the lock owner is waiting for.
- Verbx dfhpd700 'ds=1' (some fields deleted)
• Enqueue Domain (NQ)
- If Dispatcher summary shows a task waiting on an ENQUEUE:
- Verbx dfhpd700 'nq=1'
- FIND on the ENQUEUE name/type. e.g. FCDSRECD
• ENQUEUE Summary FCDSRECD (NQ)
- FIND on your task#.Task# 42303 is waiting on a file record lock owned by
a KRUD task,# 42046:
- For an ENQUEUE type FCDSRECD, the first word of the ENQUEUE name
(x'10B70440') is the address of the Dataset Name Block, followed by the key
of the record (or a portion oft he key. Entire key can be found in the
NQEA).
- - A resource name of FCDSRECD indicates a wait for a record lock in a
VSAM file or CICS-maintained data table
• File Control component (FCP)
- Verbx dfhpd700 'fcp=1'
- Find on the dataset name block address found in the NQ domain to identify
the CICS file associated with the ENQUEUE request.
• Application domain (AP)
- The Application domain can be formatted with:
- - Verbx dfhpd700 'ap=3'
- All task storage acquired on behalf of a task is formatted.
- - Any storage violations currently detected by CICS are flagged when the
leading and trailing storage accounting areas don't match.
- Task-related control blocks including the Task Control Area (TCA), and
EXEC CICS request areas are formatted.
- - EXEC Interface Block (EIB) and EXEC Interface User Structure (EIUS) can
be used to find the most recent EXEC CICS request for a task, and identify
the program that made the request.
- Can selectively format storage associated with a single task:
- Verbx dfhpd700 'aps=<taskid=xxxxx>
- - If available, will also format LE/370 storage information for the task
using the LE VERBEXIT CEEERRIP.
- Verbx dfhpd700 'ap=3'
- - FIND on keyword 'violation' to see any storage violations currently
detected by CICS for all task storage.
- - The beginning of this storage should have a check zone, U0019984,
matching the trailer which is intact.
• Find the most recent EXEC CICS request (AP)
- Verbx dfhpd700 'aps=<taskid=xxxxx>
- Page forward to find the System EIB, EIUS, User EIB.
- The System Exec Interface Block (EIB) +x'1B' (2 bytes) contains the
function code for the most recent EXEC CICS request. e.g. 0602
- The description of the EIB function codes (field EIBFN) can be found
searching in the CICS Knowledge Center (or CICS Application Programming
Reference manual).
- - Search on keyword EIBFN and the 2-byte code:
Code Command
0602 READ
0604 WRITE
- If the EIB function code in the (User) EIB is different than the function
code in the System EIB, then typically the current EXEC CICS request has
not yet completed.
- - The function code in the System EIB is the most current request.
- - The current EXEC CICS request in the example is an EXEC CICS READFILE.
The previous request was a WRITEFILE.
• Who issued the last EXEC CICS request?
- Verbx dfhpd700 'aps=<taskid=xxxxx>'
- FIND the EIUS. EIUS +x'50' contains the address of the Register Save Area
- - Note: Field name is EIUS_RSA_ADDR
- The registers are saved in the RSA at offset x'C' in the order Reg14 -
Reg12.
- - These will be the application's registers at time of the EXEC CICS
request.
- - - Reg14 will point into the requesting program, immediately after the
EXEC CICS request.
- Identify the requesting module using the Loader domain, the Program
domain, or backing up in storage looking for a module ID.
• TK - Task Summary
- Verbx dfhpd700 'TK'
- Provides you a 'One stop shop' to get pertinent information for a task
- - Contains some of the same information from various different domains
all in one place
- - TASK SUMMARY TABLE
W = Waiting for first dispatch Y=Yes N=No
F = Flagged for Abend Y=Yes N=No
S = Current state D=DISPATCHABLE S=SUSPENDED R=RUNNING A=RUNNING ABTERM YES
J=RUNNING IN JVM E=RESUMED
SC = Start Code
• Trace (TR)
- Verbx dfhpd700 'tr=1'
- - Formats abbreviated CICS trace entries.
- Verbx dfhpd700 'tr=2'
- - Formats full CICS trace entries. Time is Local time.
- Verbx dfhpd700 'tr=3'
- - Formats abbreviated trace entries followed by full trace entries.
• Short trace entries & Exception entries (TR)
- Verbx dfhpd700 'trs=<short>'
- Short trace entries contain the same information as the abbreviated trace
entries plus the following information from the full trace entries:
- - Interpreted parameter list, showing keyword and value.
- - Return address
- - Time stamp / Interval
- CICS writes Exception trace entries for most errors and abnormal
conditions. These exception entries cannot be suppressed, and are written
even if CICS tracing is stopped.
- - FIND on *EXC to see them:
• Formatting selected tasks and entries
- Verbx dfhpd700 'trs=<taskid=xxxxx, abbrev|full|short>'
- - Formats trace entries for the selected task only.
- - - e.g. verbx dfhpd700 'trs=<taskid=12345,full>'
- - Can select multiple tasks:
- - - e.g. verbx dfhpd700 'trs=<taskid=(xxxxx,yyyyy),abbrev>'
- Verbx dfhpd700'trs=<entry_num=(nnnnnn-nnnnnn)>'
- - Formats trace entries selected by trace sequence numbers.
- - - If you encounter message DFHPD0123 for an error/program check during
trace formatting, trace formatting stops.
- - - You can format the remaining trace entries if you bypass the failing
one:
- - - e.g. verbx dfhpd700 'trs=<entry_num=xxxxxx-999999,full>'
- - - - where xxxxxx is the last 'good' trace entry +2 to get around the
entry in error.
• Additional trace options
- 'trs=<ke_num=(nnnn,nnnn)>'
- - List entries for a specific Kernel number(s).
- 'trs=<termid=tttt>'
- - List entries pertaining to a specificTerminalID.
- 'trs=<timerg=(hhmmss-hhmmss)>'
- - List entries from a specific time range.
- 'trs=<tranid=tran>'
- - List all trace records related to a transaction ID.
- Note: The full list of additional trace options can be found in the CICS
Knowledge Center - see Trace Selection Parameters
Don’t Forget the Next SPARTA Meeting
Tuesday, August 7, 2018
7 p.m.
Location: LabCorp in RTP
Take I-40 to Miami Boulevard and go north. Turn right onto 1912 T.W. Alexander Drive. Go about a mile or so. Then turn right into LabCorp complex and turn left to the CMBP Building. In the lobby, sign in as a visitor to see Bill Johnson. Bill will escort you to the conference room. Use 1912 TW Alexander Drive, Durham, NC 27703 in your map app.
Free Food before meeting: BarBQ, Sodas and Tea, Dessert
Program:
zAnalytics®
Speaker: William L. Shelden, Jr. of PerfTechPro
SPARTA News
P.O. Box 13194
Research Triangle Park, NC 27709-3194
First Class Postage
SPARTA Corporate Sponsors: