ca.portal.admin

another puzzle ....

Discussion created by ca.portal.admin on Jul 28, 2008
Latest reply on Jul 28, 2008 by ca.portal.admin
i have an area (a heavily used generic look-up structure - more akin to the

dictionary class/attribute structure) - defined update to CV 63 - retrieval

to CV 75



stats in CV75:



D AREA SCPTB01.TB-TBL-AREA ALL

---------- Area ----------- Lock Lo-Page Hi-Page #Ret #Upd #Tret

#Ntfy

SCPTB01.TB-TBL-AREA Ret 7006001 7014176 9 0 0

0

Stamp: 2007-07-18-13.57.13.481874 Pg grp: 0 NoShare NoICVI NoPerm

-------- Data File -------- Mode Stat Pg-Size Fl-Type D-Space S-Cache

DD-Name

SCPTB01.TB-TBL-FILE Ret 0 6516 non-VSAM No Yes

TBTBL

Pre-fetch: Not-Allowed (DMCL) Pages per Track 8 DISP=SHR

(DMCL)

DSname: (DMCL).. PRODTBI.IDMS.TB01.TBL

DSname: (DMCL).. PRODTBI.IDMS.TB01.TBL VOLSER:

DDBP01

Cache-name: IDMS_PRODMISC

SCPTB01.TB-TBL-FILE2 Ret 0 6516 non-VSAM No Yes

TBTBL2

Pre-fetch: Not-Allowed (DMCL) Pages per Track 8 DISP=SHR

(DMCL)

DSname: (DMCL).. PRODTBI.IDMS.TB01.TBL2

DSname: (DMCL).. PRODTBI.IDMS.TB01.TBL2 VOLSER:

DDBP02

Cache-name: IDMS_PRODMISC

--- Data Buffer -- Size In-use Max Getstg Prfetch-Min

Prefetch

TBL-AREA-BUFFER 6516 8176 8176 OPSYS 500

Not-Allowd

Synonym Table User-Defined System-Calculated Total-Space

Used

8176 16384

65k

Allocation Initial Addit'l Num-Alloc Size-Init Size-Add'l

Tot-Space

8176 8176 1 55.4meg 0

55.4meg

Storage Stg-Pools Getmain'd Above-16mb Below-16mb

Total

1k 55.5meg 55.5meg 0

55.5meg

V75 ENTER NEXT TASK CODE:



the area is fully buffered (8176 pages)

and yet:



D STAT AREA SCPTB01.TB-TBL-AREA ALL

---------- Area ----------- Fnd-in-Buf Phy-Reads Fnd-in-Cache

Phy-Write

SCPTB01.TB-TBL-AREA 1880106408 5963051 7448

---------- File ----------- Fnd-in-Buf Phy-Reads Fnd-in-Cache

Phy-Write

SCPTB01.TB-TBL-FILE 1807585290 5883479 7445

SCPTB01.TB-TBL-FILE2 72521118 79572 3

----- Buffer ----- Waits Fnd-in-Buf Phy-Reads Fnd-in-Cache

Phy-Write

TBL-AREA-BUFFER 0 1880106408 5963051 7448

V75 ENTER NEXT TASK CODE:





how is it that I am reading the dataset over 700 times the number pages in

the area? Maybe shared cache is invalidating buffer pages?

but then i see so little update activity from the update CV .....



D STAT AREA SCPTB01.TB-TBL-AREA ALL

---------- Area ----------- Fnd-in-Buf Phy-Reads Fnd-in-Cache

Phy-Writes

SCPTB01.TB-TBL-AREA 12754 299 109

62

---------- File ----------- Fnd-in-Buf Phy-Reads Fnd-in-Cache

Phy-Writes

SCPTB01.TB-TBL-FILE 9945 275 86

60

SCPTB01.TB-TBL-FILE2 2809 24 23

2

----- Buffer ----- Waits Fnd-in-Buf Phy-Reads Fnd-in-Cache

Phy-Writes

BUFF-9076-1 0 19367 617 109

72

V63 ENTER NEXT TASK CODE:



any thoughts would be greatly appreciated





Chris Hoelscher

Senior IDMS & DB2 Database Administrator

Humana Inc

502-476-2538

choelscher@humana.com







The information transmitted is intended only for the person or entity to
which it is addressed and may contain CONFIDENTIAL material. If you receive
this material/information in error, please contact the sender and delete or
destroy the material/information.
"
IDMS Public Discussion Forum
IDMS-L@LISTSERV.IUASSN.COM
SMTP
IDMS-L@LISTSERV.IUASSN.COM
IDMS-L@LISTSERV.IUASSN.COM
SMTP








Normal

Normal
Re: another puzzle ....
"Hi Chris



I think I may have the explanation, though this is based on research I did
on this subject some time ago, specifically for my presentation at CA World
2000, so I might be a bit out of date! The full explanation is a bit long
winded, so if you want the complete picture, see presentation DI850PN -
Multi-CV Configurations for Performance and Resilience and refer to the
section on CA-IDMS Global caching.



In short, the issue is that IDMS uses the global cache for READS as well as
UPDATES. As the global cache cannot be big enough to hold the entire
contents of the local cache (i.e., the DMCL buffer), then pages in the
global cache get re-used causing cross-invalidation of the local buffer even
though the page hasn't changed. The consequence of this is unnecessary
re-reads of pages that haven't changed and that would otherwise have been
found in the DMCL buffer of the read CV.



In the DB2 world, caching of read data is an optional extra implemented by
coding GBPCACHE=ALL instead of the default GBPCACHE=CHANGED on the ADD
TABLESPACE definition. However, the DB2 documentation warns of the
consequences of using GBPCACHE=ALL, i.e. ""unnecessary buffer invalidations
caused by the global cache being too small"".



There is a lot more detail in the presentation so let me know if you would
like a copy.



Best regards



Gary

Gary Bronziet
gary.bronziet@cogito.co.uk

Cogito Limited
Performance Software for IBM DB2R and CA IDMST
<http://www.cogito.co.uk/> www.cogito.co.uk

Outcomes