ca.portal.admin

Re:Re: Mysterious occurrences of 0226 status code

Discussion created by ca.portal.admin on Jan 22, 2009
Gary,

We have occasionally seen things under the category of Stupid Programmer
Tricks -- such as creating their own version of SUBSCHEMA-CTRL in
working storage, then using incorrect offsets, or having the program
overwrite its own storage causing all sorts of havoc, etc.

Of course, as you point out, the problem is finding which program caused
the error and when it happened. If you can restore from your backups to
alternate named files, you can then run the DBAN in local mode against
those without disturbing your production data while it is under control
of the CV.

Be sure to let us all know when you finally find the solution! This one
sure has generated a lot of excitement on the list.

Jim Ritterbusch

--
""The road to **** is paved with unbought stuffed dogs."" -- Hemingway


Gary Bryson wrote:
The program that gets the 0226 is in an OBTAIN ERASE loop. I assume
it is doing a sweep, but I can't say for sure at this moment. I'll
see if I can find out when I gat a few minutes.



The information contained in this e-mail message and any attachments
is confidential and intended only for the addressee(s). If you are not
an addressee, you may not copy or disclose the information, or act upon
it, and you should delete it entirely from your e-mail system. Please
notify the sender that you received this e-mail in error.
-----Original Message-----
From: IDMS Public Discussion Forum [mailTo:IDMS-L@LISTSERV.IUASSN.COM]
On Behalf Of Cherlet, Gary (JTS)
Sent: Wednesday, January 21, 2009 3:17 PM
To: IDMS-L@LISTSERV.IUASSN.COM
Subject: Re: Mysterious occurrences of 0226 status code

Clearly you can't be doing an area sweep - are you ? I do not
understand how you can get a record not found or no duplicates found
on an ERASE.
The ERASE verb requires currency to work - so surely you would have
obtained next in area or CALC'd in on a key from a flat file. Can you
tell us a bit more about the logic / access plan? I find this very
puzzling. Are you running under CV or local mode?

Cheers - Gary

Gary Cherlet
Justice Technology Services
Department of Justice, SA Government
Telephone +61 (0)8 8226 5199
Facsimile +61 (0)8 8226 5311
Mobile +61 (0)41 333 1613
MailTo:cherlet.gary@saugov.sa.gov.au

This e-mail message and any attachments are qualified as follows:
Addressing: If you have received this e-mail in error, please advise
by reply e-mail to the sender. Please also destroy the original
transmission and its contents. Confidentiality: This e-mail may
contain confidential information which also may be legally privileged.
Only the intended recipient(s) may access, use, distribute or copy
this e-mail.
Individual Views: Unless otherwise indicated, the views expressed are
those of the sender, not Justice Technology Services. Computer
Viruses:
It is the recipient's responsibility to check the e-mail and any
attached files for viruses.

-----Original Message-----
From: IDMS Public Discussion Forum [mailTo:IDMS-L@LISTSERV.IUASSN.COM]
On Behalf Of Gary Bryson
Sent: Thursday, 22 January 2009 4:31
To: IDMS-L@LISTSERV.IUASSN.COM
Subject: Mysterious occurrences of 0226 status code

To all the experts,

We have had a particular batch program abend twice in the last three
weeks with an 0226 status code. The program's purpose is to ERASE all
the records (only one type, CALC, no sets) in the area, while
calculating statistics from those records. In both instances, in the
interest of getting batch processing done in a reasonable time, we
reFORMATed the area, and did without the statistics.

Can anyone suggest any non-obvious reason how pointers in an area with
one CALC record type and no sets defined might be getting corrupted?
We have no production local mode update jobs in this application.

Thanks,
Gary Bryson
Database Administrator, SG Database Group Delta Dental/EDS Denti-Cal



The information contained in this e-mail message and any attachments
is confidential and intended only for the addressee(s). If you are not
an addressee, you may not copy or disclose the information, or act
upon it, and you should delete it entirely from your e-mail system.
Please notify the sender that you received this e-mail in error.

"
IDMS Public Discussion Forum
IDMS-L@LISTSERV.IUASSN.COM
SMTP
IDMS-L@LISTSERV.IUASSN.COM
IDMS-L@LISTSERV.IUASSN.COM
SMTP








Normal

Normal
Re: Dummies guide to ZIIP
"Just to add some figures to the debate as an illustration.

I have a 3rd party product with exits in IDMSDBIO. I have an I/O
intensive batch benchmark running on an empty machine.

These are my figures: The first 4 are without the 3rd party product. The
other 4 with it.

(RPSDSK means Records per second from disk i.e. this benchmark is doing
random I/O with < 5% buffer hits)

LOAD MT ZIIP CPUMINS RPSBUF RPSDSK RUNDATE

DSK N N 0.28 0 1920 2009-01-26
DSK Y N 0.28 0 3157 2009-01-26
DSK N Y 0.28 0 3448 2009-01-26
DSK Y Y 0.33 0 3370 2009-01-26

DSK N N 0.37 0 1910 2009-01-26
DSK Y N 0.38 0 1973 2009-01-26
DSK N Y 0.40 0 1923 2009-01-26
DSK Y Y 0.38 0 1948 2009-01-26

The first thing to notice is that the Records Per second with and
without the Exit in our current config of MT=N,ZIIP=N are 1910/1920 I.e
equal. The exit is using more CPU 0.37/0.28 but the machine is idle and
CPU is available. The I/O rate appears to be in control. The story is
very different when the CPU is under load.

If I turn multitasking on without the exit I get an immediate benefit. I
don't know why at the moment with only one run unit running.

If I turn multitasking on with the exit then I get a slight benefit. I
would have guessed that.

When I turn ZIIP on it gets really good.

My ZIIP throughput is fantastic without the exit. 60% faster on clock
time.

My ZIIP throughput with the exit is better - but only marginally.

Ergo the exit is negating my ZIIP effectiveness by a substantial amount
- In this scenario.

There is a diagnostic that can be used to determine the ZIIP swappiness.

For Case 1: No 3rd party exit. MT=N,ZIIP=Y I get:

CHGEMODE table display
Address Program Offset Call cnt TCB->SRB SRB->TCB
-------- -------- -------- ---------- ---------- ----------
1742DE2E IDMSDBIO 00000E2E 30 0 30
1742DEF6 IDMSDBIO 00000EF6 30 30 0

*** Subtask display ***

Subtask Elapsed time Total CPU time %
CPU SRB
Name TCB SRB TCB SRB TCB
SRB
-------- -------------- -------------- -------------- -------------- ---
---
MAINTASK 00:00:15.6231 00:00:01.6540 00:00:15.7667 00:00:04.0441 100
244 Y


For Case 2: With 3rd Party exit MT=N,ZIIP=Y I get:

CHGEMODE table display
Address Program Offset Call cnt TCB->SRB SRB->TCB
-------- -------- -------- ---------- ---------- ----------
005D7E2E IDMSDBIO 00000E2E 5675 0 5675
005D7EF6 IDMSDBIO 00000EF6 5675 5675 0

*** Subtask display ***

Subtask Elapsed time Total CPU time %
CPU SRB
Name TCB SRB TCB SRB TCB
SRB
-------- -------------- -------------- -------------- -------------- ---
---
MAINTASK 00:00:19.9256 00:00:02.1405 00:00:21.5052 00:00:04.8715 107
227 Y


Quite a lot more TCB time . All down to the Exit and dramatically
affecting my bottom line - recs per sec.

There is nothing wrong with CA's ZIIP implementation. It is really good.
But non CA exits can and do affect the result more than one would have
imagined.

In my case 1923 recs per second compared to 3348 recs per second. I
would call that significant.

Outcomes