ADABAS V8 AND MISCELLANEOUS TOPICS - PowerPoint PPT Presentation

About This Presentation
Title:

ADABAS V8 AND MISCELLANEOUS TOPICS

Description:

Title: ADABAS V8 AND MISCELLANEOUS TOPICS Author: RZM6WH Last modified by: RZM6WH Created Date: 7/21/2006 1:56:56 PM Document presentation format – PowerPoint PPT presentation

Number of Views:536
Avg rating:3.0/5.0
Slides: 112
Provided by: RZM7
Category:

less

Transcript and Presenter's Notes

Title: ADABAS V8 AND MISCELLANEOUS TOPICS


1
ADABAS V8 ANDMISCELLANEOUS TOPICS
Jim Poole
2
ADABAS V8
  • SPANNED RECORDS
  • LOB SUPPORT
  • MUPEX, BEYOND 191
  • ACBX
  • LINK / SVC / NUC
  • 6. MULTIPLE EXTENTS
  • 7. FDT
  • 8. MISCELLANEOUS

3
V8 SPANNED RECORDS.WHY
1 PRIMARY RECORD UP TO 4 SECONDARY RECORDS
RECORD SIZE LIMITED BY COMPRESSED RECORD SIZE
(RSP.CD 49)
NOTE ACTUAL DATA LIMITED BY BLOCK HEADER, RECORD
HEADER, SPAN HEADER
4
V8 SPANNED RECORDS. LAYOUT
ASSO
DATA
FCB TOPISN,MAXISN,MINISN MINSEC,MAXSEC
DS2SPAN-HDR
AC
DS1 SPAN-HDR
AC2
DS3SPAN-HDR
1. RECORDS SEGMENTED ON FIELD BOUNDARY (LA FIELDS
BY CHAR) 2. INDEX CONTAINS ONLY PRIMARY ISN 3.
TOPISN,MAXISN,MINISN FOR PRIMARY 4. MINSEC,MAXSEC
FOR SECONDARY
5
V8 SPANNED RECORDS. SET UP
ADADBS RECORDSPANNING FILEfnr,MODEON !!
REQUIRES EXCLUSIVE FILE USE !! or ADACMP
COMPRESS SPAN or ? AOS ?
ADAREP
File section SPANNED REC SUPP
YES CPEXLIST SYNS 77 ET 2006-08-19 131415
300 22 AD168DBS ENABLE
SPANNED RECORD SUPPORT 241
NOTE AC2 NOT ALLOCATED UNTIL SPANNING OCCURS
6
V8 SPANNED RECORDS. ADAREP SPANNED RECS EXIST
TOP-ISN 1,000
MAX-ISN EXPECTED 20,669
RECORDS LOADED 1,000
MIN-ISN 1
TOP AC2 ISN 1,000
MAX AC2 ISN EXP. 1,378

LIST I DEV BLOCK I SPACE ALLOC.I FROM TO
I TYPE I TYPE LNGTH I BLOCKS CYL I RABN RABN
I -----I------------I--------------I--------------
I AC I 8391 4136 I 15 0I 12696
12710I AC2 I 8391 4136 I 1 0I 13761
13761I NI I 8391 4136 I 1000 5I 12711
13710I UI I 8391 4136 I 50 0I 13711
13760I FDT I 8391 4136 I 4 0I 1515
1518I DSST I 8391 4136 I 1 0I 2595
2595I I I I
I DS I 8391 10796 I 2000 26I 18037
20036I
7
V8 SPANNED RECORDS. REMOVAL
ADADBS RECORDSPANNING FILEfnr,MODEOFF
TIMELIMIT (DFLT60) !!
REQUIRES EXCLUSIVE FILE USE !!
  1. SCAN ALL DS TO ENSURE NO SPANNED RECORDS EXIST
  2. IF TIMELIMIT EXCEEDED, ADADBS ABORTS

? CE ? CHECK AC2 VERSUS DS ??
NOTE SAME CHECKPOINT AS MODEON
8
V8 SPANNED RECORDS. INTERNALS
NO SPANNED RECORDS
DS RABN
9
V8 SPANNED RECORDS. INTERNALS
ONE SPANNED RECORD
BH
RH
fields
RH
fields
DS RABN
fields
fields
RH
fields
FS
10
V8 SPANNED RECORDS. Eg. 1 INTERNALS
MODEON
-IRL
-IBL
---ISN----
0000 0E820004 0E7E0000 00049999 9FF4E7F4 0010
F0F7F9F8 F1404040 40000F00 414FD540
DS RABN X
UPDATE A FEW 100 MORE BYTES
11
V8 SPANNED RECORDS. Eg. 2 INTERNALS
DATA (hdrs)
ASSO
ISN IND NEXT PRI
(7)
AC
7 x81 7 7
PRI
SEC
7 x41 21 7
(7) (21) (22)
AC2
21 x41 22 7
SEC
SEC
22 x41 0 7
1. PRI ISN IN AC 2. SEC ISNs IN AC2 3. SEC ISN
MAY EQUAL PRI ISN
NOTES
12
V8 SPANNED RECORDS. UPDATE to 1st SPAN
1ST UNUSED

DS EXTENT

A1 OR N1/N2 12K BYTES
REC-5, REC6
OR
REC-6, REC5
REC5
OR
13
V8 SPANNED RECORDS. UPDATES
REGARDLESS OF REUSEDS OR RECORD POSITION WHEN
1ST SPAN CREATED, IT MOVES TO END OF FILE
( POP N SPAN )
EG. WHAT IF ALL RECORDS IN FILE UPDATED TO SPAN
ONCE ????
PROVIDES FASTER UTILITIES, USER READS, ETC.
AFTER 1ST SPAN NEXT SPAN MAY BE ANYWHERE
(PRI SEC1 . . . SECn)
IF LRECL UPDATED TO lt ONE BLOCKLENGTH
SPANNED HEADER CHANGED BACK TO UNSPANNED HEADER
14
V8 SPANNED RECORDS. UPDATES PLOG
PLOG ALWAYS CONTAINS PRIMARY RECORD (BI / AI)
PLOG ONLY CONTAINS SECONDARY RECS IF UPDATED
PLOG
15
V8 SPANNED RECORDS. PROGRAM PERFORMANCE
FILE 241 / 19,968 RECORDS / SPANNED PRI
SEC FDT AA . . . . . ZZ
FOR EXAMPLE
16
V8 SPANNED RECORDS. PROGRAM PERFORMANCE
FILE 241 / 19,968 RECORDS / SPANNED PRI
SEC FDT AA . . . . . ZZ
FOR EXAMPLE
NUC UP, RUN PGM, NUC DOWN
17
V8 SPANNED RECORDS. UTILITY OPTIONS
ADACMP COMPRESS / DECOMPRESS SPAN
- enable span HEADER
- Header in input or Add Header (DECOMP)
DATADEVICE - Split records based on
device type MAXLOGRECLEN - Assemble input
records into larger recs
ADADBS SPANCOUNT FILEnnn CAN BE
UPD OR ACC USERS
SPECIFYING AC2RABN, MAXISN2 ADALOD
ADAORD ADASAV FMOVE
NOTE ADAORD KEEPS PRISEC PAIRS
18
V8 SPANNED RECORDS. ISSUES / CONCERNS
  • INCREASE BLOCKSIZE OR GO SPANNED?
  • - DB LEVEL vs FILE
    LEVEL
  • - CONVERSION vs ADADBS
    SWITCH
  • - LIMIT TRACKSIZE vs LIMIT 5 x
    BLOCKSIZE
  • - PROVEN vs NEW
  • - GUARANTEED PERFORMANCE vs

19
V8 SPANNED RECORDS. ISSUES / CONCERNS. UNDO
2. BACKWARD CONVERSION OF SPANNED FILE a.
UPDATE / ENSURE ALL RECORDS BACK TO PRIMARY.
( ADADBS SPANCOUNT FILEnnn) b. ADADBS
RECORDSPANNING FILEfnr,MODEOFF NOTE
READ OF ALL DATA STORAGE (VS AC2) NOTE
REQUIRES EXCLUSIVE FILE USE
CONSIDER USE OF DUPLICATE FILES, ADARES REGENERATE
20
V8 SPANNED RECORDS. ISSUES / CONCERNS
3. INCREASE ADARUNs NISNHQ / NH LWP
(FOR LARGER DVT) LP, DUALPLS and RESULTANT
SIZE OF WORK AND PLOGs
21
V8 SPANNED RECORDS. ISSUES / CONCERNS
4. RECORD READ PERFORMANCE MORE AFFECTED IF
FIELDs AT END OF RECORD. L2 READS
ALL RECORDS L3,L1 READ SPANNED RECORD ONLY
IF FIELDS REQUESTED L3 MAY BE MUCH FASTER
THAN L2
5. DIRTY READS. EG. READ DA-FILE BY
ZZ-FIELD DISPLAY AA-FIELD KEEP
DESCRIPTORS IN FIRST OF RECORD.
6. GREATER RISK OF RSP.CD. 53 (UNTIL SUPPORT OF
ACBX)
22
V8 SPANNED RECORDS. ISSUES / CONCERNS
  • PRI SPAN OR PRI SPAN n.
  • PERFORMANCE AND IO OF
  • ADAULD
  • ADAORD
  • ADAINV

23
END OF SPANNEDON TO LOB
24
LOB SUPPORT.
FCB FNR 10
EMPLOYEES FILE
FCB FNR 11
LOB FIELD DATA
PICTURES .JPG .TIF
WORD DOC
PPT
PDS MEMBERS
ETC,ETC lt 2G
25
LOB SUPPORT STRUCTURE
Flags, leng
FLD1, FLD2 . . . LOB FIELD . .
BASEFILE
DS.REC.
LOBFILE
26
LOBs CREATING. ADACMP
ADACMP
ADACMP COMPRESS ADACMP FILE10
ADACMP FNDEF'01,AA,8,A,NU,DE
ADACMP FNDEF'01,L1,0,A,LB,NU
CHAR. LOB
LOB DATA MUST BE ADDED LATER VIA PROGRAM
27
LOBs CREATING. ADALOD 1
ADALOD BASE FILE
ADALOD LOAD FILE010 ADALOD LOBFILE11

SIZE FILE (DS,NI,UI,AC) MINUS LOB SPACE
28
LOBs CREATING. ADALOD 2
ADALOD LOB FILE
ADALOD LOAD FILE11,LOB ADALOD BASEFILE10
ADALOD DSSIZE ADALOD
MAXISN ADALOD NISIZE,UISIZE ADALOD rest
of parms very small
AVLOBS AVERAGE LOB SIZE PER RECORD ER
ESTIMATED NUMBER OF RECORDS BPL DS BLOCKS
PER LOB AVLOBS / DS.BLOCKSIZE
NISIZE BPL ER ?20? / ASSO.BLOCKSIZE
29
LOBs CREATING. ADALOD 2 EG.
AVLOBS 600K E.R. 100,000 D.BLOCKSIZE
10,796 A.BLOCKSIZE 4,136
FOR EXAMPLE
BPL DS BLOCKS PER LOB AVLOBS /
DS.BLOCKSIZE 600,000 / 10,796
56
DSSIZE BPL ER 56 100,000
5,600,000
MAXISN 5,600,000
NISIZE BPL ER ?20? / ASSO.BLOCKSIZE
5,600,000 20 / 4,136 27,000
30
LOBs CREATING. EXISTING FILES
  • ADADBS NEWFIELD FNDEF. . .
  • ADALOD LOBFILE
  • NOTE MUST DO ADADBS FIRST !

31
LOBs CREATING. ADAREP
PART 1

FILE OPTIONS

. CONTAINS LOB FIELDS
. . PRIVILEGED USE
. . . LOB FILE FILE NAME
------------------
------------------- 10 LOBFILE-BASE
. L . . 11 LOBFILE-LOB
. . . L
32
LOBs CREATING. ADAREP
PART 2

LOB FILES

FILE WITH I ASSOCIATED I LOB FIELDS I LOB
FILE I ------------------------- 10 I
11 I -----------I------------I
33
LOBs CREATING. ADAREP
PART 3 FILE DETAIL. BASE FILE
LOB file No Contain LOB
fields Yes 1 I L1 I 0 I A
I LB,NU
PART 4 FILE DETAIL. LOB FILE
LOB file Yes Contain LOB
fields No FDT not printed - this file is a
LOB file
34
LOBs CREATING. DDM
VIA SYSDDM
  • L DB Name F Leng S D Remark
  • -- ----------------- - ---- - -
    ---------------------
  • 1 L1 L_at_L1-FIELD I 4 LEN. IND. OF
    L1-FIELD
  • 1 L1 L1-FIELD A N LOB
  • LE1073741821
  • OPTIONSLB

35
LOBs TESTING
RULES OF ENGAGEMENT
  • 0. NATURAL 4.2.1
  • USE SMALL LOBS (? SLOBs ?) UNDER 32K
  • FTP TO MAINFRAME, A SMALL JPG PIC
  • STORE IN ADABAS
  • READ FROM ADABAS
  • FTP FROM MAINFRAME BACK TO PC TO VERIFY

SEE SERVLINE24 TECH DOC 542357 FOR NATURAL ZAPS
36
LOBs TESTING
STORE IN ADABAS
0010 DEFINE DATA LOCAL 0030
1 DFILE VIEW OF FILE-10 0040 2
AA-FIELD 0050 / 2
L_at_L1-FIELD 0060 2
L1-FIELD (A) DYNAMIC 0080 01 A (A)
DYNAMIC 0090 01 LENG (I4)
0100
0110 END-DEFINE
0120 DEFINE WORK FILE 1 TYPE
'UNFORMATTED' 0130 READ WORK FILE 1 A
0140 GIVING LENGTH LENG
0150 DISPLAY LENG 0160
AA-FIELD 'BATFSH' 0170
L1-FIELD A 0180 STORE
IN DFILE 0190 END
TRANSACTION 0200 END-WORK
0210 END
37
LOBs TESTING
READ FROM ADABAS
0010 DEFINE DATA LOCAL 0020
0030 1
DFILE VIEW OF FILE-10 0040 2
AA-FIELD 0050 2
L_at_L1-FIELD 0060 2
L1-FIELD 0070
0080 01 A (A) DYNAMIC
0090 01 LENG (I4)
0100 END-DEFINE
0110
0120 DEFINE WORK FILE 2 TYPE 'UNFORMATTED'
0130 FIND (1) DFILE WITH AA-FIELD
'BATFSH' 0140 A L1-FIELD
0150 0160
0170 WRITE WORK 2 VARIABLE A
0180 END-FIND
0190 END
38
LOBs TESTING
A NICE NATURAL PGM
DEFINE DATA LOCAL 1
DFILE VIEW OF FILE-10 2
AA-FIELD 2
L_at_L1-FIELD 2
L1-FIELD (A040) END-DEFINE
READ DFILE
DISPLAY ISN AA-FIELD
L_at_L1-FIELD L1-FIELD END
39
LOBs ADARUN PARMS
INCREASE
LBP/LFIOP LU gt MAX LOB/SIZE (RSP.CD.
152) NAB gt LU (RSP.CD. 254)
NH/NISNHQ gt BPL ? (RSP.CD.
46) LP/WORKSIZE gt ? (RSP.CD. 9-15)
DUALPLS gt ? LDEUQP gt
(RSP.CD. 197)
40
LOBs FINAL THOUGHTS
1. DSREUSE / ISNREUSE OFF ?
2. REORDER, KEEP LOB SEGMENTS TOGETHER
3. RSP.CD. 132 (GET UPDATE MANUAL FROM SERVLINE)
4. PC NATURAL 6.2.2. , ENTIRE NETWORK, etc.
5. HOW TO REMOVE LOB? DELETE LOBFILE / ADACMP
DECOMPRESS/CMP/LOD BASEFILE Or ZAP
SOMETHING (FDT,FCB)?
41
MUPEX
BEYOND 191
1. SET AT THE FCB LEVEL, NOT FDT
2. MAX OF 65,534 OCCURANCES (SEE DS RECORD
LIMITS)
3. SET FOR BOTH MU AND PE
TECH REVIEW MU DE DO NOT HAVE OCCURANCE
NUMBER IN INV. LIST PE DE HAVE THE
OCCURANCE NUMBER IN INV. LIST
42
MUPEX. DEFINING
LOADING NEW FILE
ADACMP COMPRESS MUPEX MUPECOUNT12
Eg. OCC.CNT11
43
MUPEX. ADAREP
PART 1

FILE OPTIONS
. 2-BYTE
MU/PE INDEX . . REPLICATED
. . . PRIV USE FILE
NAME
------------------ -------------------
16 EMPLOYEES . T . .
PART 2
FILE 241 (TESTFILE ) TWO BYTE
MU/PE YES
44
MUPEX. DS INTERNALS
OCC CNTR
DS RECORD
. . . 01 L-VALUE . . .
NOTE COUNT NEVER RETURNS TO PRE-2B CONDITION !
45
MUPEX. INVERTED LIST
PE DE ONLY
Eg. NI ELEMENT
RELEASE S1 / MUPEX / ADAINV S1
46
MUPEX.
1. IN DATA STORAGE, EXTRA BYTE NOT ADDED UNTIL
OCC gt 191
2. FOR PE-DE, EXTRA BYTE ADDED VIA ADAINV.
(MU DE DO NOT HAVE OCCURANCES IN INVERTED LIST)
3. WORST CASE DE LENGTH ( OCC) MUST BE LESS
THAN 253
4. ONCE EXTRA BYTE ADDED IN DATA STORAGE IT IS
NEVER REMOVED
47
MUPEX CONVERTING BACK.
  • UPDATE ALL RECORDS TO LESS THAN 192 OCCURANCES.
  • ADACMP DECOMPRESS
  • ? MASSAGE FILE TO REMOVE EXTRA BYTE ?
  • ADACMP COMPRESS
  • ADALOD

IF CHANGE ENHANCEMENTS EXISTED ? UPDATE
BACK TO 1 BYTE ? ? ADADBS MUPEX
FILEnnn,MUPECOUNT1 ?
48
MUPEX PE DE ISSUES
2700 FILES 1000 CONTAIN MU/PE 170 CONTAIN PE-DE
FOR EXAMPLE
DISCUSSION / SOLUTIONS
  1. TIME TO ADAINV PE-DE, IS IT A PROBLEM?

2. ENHANCE ADAORD OR ADAINV TO UPDATE JUST PE-DE ?
3. SEPARATE MUPEX ? MUX, PEX ?
CONTINUED ?
49
MUPEX PE DE ISSUES continued
4. IF LESS THAN 191 USE 1 BYTE COUNT. IF MORE
THAN 191 USE 2 BYTE COUNT. MAINTAIN DS AND
INVERTED LIST WITH THIS CONSTRUCT
?? MORE DE BYTES ?? ?? 1 / 2 BYTE MESS LATER ON ??
50
DIRECT CALL CHANGES
ADABAS
THE OLDE
ADARUN RSP.CD LU 152 NAB 254,253
80 BYTES of data FBL,RBL,SBL,VBL,IBL (2b 32K
limit)
ACB
UP TO 1 EACH FB,RB,SB,VB,IB
BUFFERS
51
ACBX
THE NEW
CALL ADABAS USING ACBX, . . . ,
ABD1,ABD2,ABD3,ABD4, . . .
!! SEE COMMAND REFERENCE MANUAL !!
192 BYTES
Eg. FB gt 48 BYTES
Eg. RB gt 48 BYTES
ACBX
Eg. SB gt 48 BYTES
Eg. IB gt 48 BYTES
Eg. VB gt 48 BYTES
ABD s
Eg. MB gt 48 BYTES
Eg. FB2 gt 48 BYTES
Eg. RB2 gt 48 BYTES
ANY SEQUENCE, MULTIPLES
NOTE V8 ADALINK REQUIRED, ELSE RSP.CODE 253-11
52
ACBX
FEATURES
  1. 4 BYTE DBID AND 4 BYTE FNR
  2. 4 BYTE ISN AND 8 BYTE ISN OPTIONS
  3. 8 COMMAND OPTIONS (FROM 2)
  4. 6 ADDITIONS (FROM 5)
  5. ENHANCE ERROR FIELDS
  6. 8 BYTE COMPRESSED/DECOMPRESSEC REC LENGTH
  7. MORE ACCURATE CMDTIME

53
ABDs ADBAS BUFFER DESCRIPTIONS
8 BUFFER TYPES (FROM 5 IN V7)
FORMAT BUFFER
RECORD BUFFER
VALUE BUFFER
SEARCH BUFFER
ISN BUFFER
MULTIFETCH BUFFER
MLF HDRS (PRF NOT SUPPORTED)
USER BUFFER
FOR REVIEW
PERFORMANCE BUFFER
54
ABDs
CONTENTS
48 BYTES
TYPE ( F,R,S,V,I,M,U) LOCATION (PTR OR AT
END) SIZE OF DATA (xBL) SIZE TO SEND (xBL) SIZE
RECEIVED
x BL
BUFFER DATA (IF LOCAL)
55
ACBX STATUS AS OF 10/1/2006
1. NATURAL 4.2.1 LOB SUPPORT ? ACBX CALLS
2. NATURAL 4.2.1 MLF ? ACB CALLS
3. ADAMLF ? ACB CALLS
SAMPLE COBOL PROGRAM ON NEXT PAGES ?
56
WORKING-STORAGE SECTION.
01 ACBX.
05 FILLER PIC S9(4)
COMP VALUE 0. 05 CBXVER PIC
X(2) VALUE 'F2'. 05 CBXLEN
PIC S9(4) COMP VALUE 192. 05
CMD-CODE PIC X(2) VALUE SPACES. 05
FILLER PIC S9(4) COMP VALUE 0.
05 RESP-CODE PIC S9(4) COMP VALUE 0.
05 CID PIC X(4) VALUE
SPACES. 05 DBID PIC S9(8) COMP
VALUE 0. 05 FNR PIC S9(8)
COMP VALUE 0. 05 FILLER PIC
S9(8) COMP VALUE 0. 05 ISN
PIC S9(8) COMP VALUE 0. 05 FILLER
PIC S9(8) COMP VALUE 0. 05
ISL PIC S9(8) COMP VALUE 0. 05
FILLER PIC S9(8) COMP VALUE 0.
05 ISQ PIC S9(8) COMP VALUE 0.
05 COPT1 PIC X(1) VALUE
SPACE. 05 COPT2 PIC X(1)
VALUE SPACE. 05 COPT3 PIC X(1)
VALUE SPACE. 05 COPT4 PIC
X(1) VALUE SPACE. 05 COPT5
PIC X(1) VALUE SPACE. 05 COPT6
PIC X(1) VALUE SPACE.
ACBX
57
05 COPT7 PIC X(1) VALUE
SPACE. 05 COPT8 PIC X(1)
VALUE SPACE. 05 ADD1 PIC X(8)
VALUE SPACES. 05 ADD2 PIC
S9(8) COMP VALUE 0. 05 ADD3
PIC X(8) VALUE SPACES. 05 ADD4
PIC X(8) VALUE SPACES. 05
ADD5 PIC X(8) VALUE SPACES.
05 ADD6 PIC X(8) VALUE
SPACES. 05 FILLER PIC S9(8) COMP
VALUE 0. 05 FILLER PIC S9(8)
COMP VALUE 0. 05 ERR-OFFSET PIC
S9(8) COMP VALUE 0. 05 ERR-CHAR
PIC S9(4) COMP VALUE 0. 05
RESP-SUB PIC X(2) VALUE SPACES. 05
ERR-BUFFID PIC X(1) VALUE SPACE.
05 ERR-BUFFSEQ PIC X(3) VALUE
SPACES. 05 SUB-RESP PIC S9(4) COMP
VALUE 0. 05 SUB-RESP-SUB PIC S9(4)
COMP VALUE 0. 05 SUB-RESP-TXT PIC
X(4) VALUE SPACES. 05 LCOMPR
PIC S9(16) COMP VALUE 0. 05
LDECMP PIC S9(16) COMP VALUE 0. 05
CMDTIME PIC S9(16) COMP VALUE 0.
05 USER-AREA PIC X(16) VALUE
SPACES. 05 FILLER PIC X(24)
VALUE SPACES.
ACBX Cont.
58
01 ABDFB.
05 FBLEN PIC S9(4) COMP
VALUE 48. 05 FBVER PIC X(2)
VALUE 'G2'. 05 FBID PIC
X(1) VALUE 'F'. 05 FBRSV1
PIC X(1) . 05 FBLOC
PIC X(1) VALUE SPACE. 05
FBRSV2 PIC X(1) . 05
FILLER PIC S9(8) COMP VALUE 0.
05 FILLER PIC S9(8) COMP VALUE 0.
05 FBSIZE PIC S9(16) COMP VALUE
0. 05 FBSEND PIC S9(16) COMP
VALUE 0. 05 FBRECV PIC S9(16)
COMP VALUE 0. 05 FILLER PIC
S9(8) COMP VALUE 0. 05 FBADDR
PIC S9(8) COMP VALUE 0. 05 FBCONT
PIC X(20) VALUE SPACES.
ABD BLOCK FOR FB
59
01 ABDRB.
05 RBLEN PIC S9(4) COMP
VALUE 48. 05 RBVER PIC X(2)
VALUE 'G2'. 05 RBID PIC
X(1) VALUE 'R'. 05 RBRSV1
PIC X(1) . 05 RBLOC
PIC X(1) VALUE SPACE. 05
RBRSV2 PIC X(1) . 05
FILLER PIC S9(8) COMP VALUE 0.
05 FILLER PIC S9(8) COMP VALUE 0.
05 RBSIZE PIC S9(16) COMP VALUE
0. 05 RBSEND PIC S9(16) COMP
VALUE 0. 05 RBRECV PIC S9(16)
COMP VALUE 0. 05 FILLER PIC
S9(8) COMP VALUE 0. 05 RBADDR
PIC S9(8) COMP VALUE 0. 05 RBCONT
PIC X(50) VALUE SPACES.
01
CB-RES PIC S9(8) COMP VALUE 0.
01 CB-REE PIC S9(8) COMP VALUE 0.
ABD BLOCK FOR RB
60
PROCEDURE DIVISION.
MAIN-PARAGRAPH. MOVE
X'00' TO FBRSV1. MOVE X'00' TO
RBRSV1. MOVE X'00' TO FBRSV2.
MOVE X'00' TO RBRSV2.
MOVE 168 TO DBID.
MOVE 'OP' TO CMD-CODE.
PERFORM CALLACBX.
MOVE 168 TO DBID.
MOVE 16 TO FNR.
MOVE 'L3' TO CMD-CODE. MOVE 'L3XX'
TO CID. MOVE 'AE' TO ADD1.
MOVE 10 TO FBSIZE.
MOVE 10 TO FBSEND. MOVE 'AC.'
TO FBCONT. MOVE 50 TO RBSIZE.
MOVE 50 TO RBSEND.
PERFORM CALLACBXD 2000 TIMES.
ENSURE FIELDS SET TO BINARY ZEROES
61
CLOSE-ER-UP.
MOVE 168 TO DBID.
MOVE 'CL' TO
CMD-CODE.
PERFORM CALLACBX.
STOP RUN.
CALLACBX.
CALL 'ADABAS'
USING ACBX.
IF RESP-CODE NOT EQUAL TO 0 PERFORM ERR-RTN.
DISPLAY 'CMD ' CMD-CODE ' RSP.CD
' RESP-CODE. CALLACBXD.
CALL 'ADABAS'
USING ACBX, CB-RES, CB-REE, ABDFB, ABDRB.
IF RESP-CODE 3 THEN GO TO CLOSE-ER-UP.
IF RESP-CODE NOT EQUAL TO 0 GO TO
ERR-RTN. DISPLAY 'ISN' ISN '
RB' RBCONT. ERR-RTN.

DISPLAY '------ERROR FOR ACBX ---------'.
DISPLAY 'CMD ' CMD-CODE.
DISPLAY 'FNR ' FNR.
DISPLAY
'ISN ' ISN.
DISPLAY 'RSP ' RESP-CODE.
DISPLAY 'SUB ' RESP-SUB.
62
ACBX EXAMPLE
FILE CONTAINS 20,000 RECORDS 1062 DS RABNS READ
IN 20b PER RECORD USE MLF
63
COMPATIBILITY V7/8 NUC/SVC/LNK
SVC V8
PGM
LINK V7
? REQUIRED
NUC V8
NUC V7
LINK V8
PGM
ACB CALLS
!! ACBX CALLS REQUIRE ALL V8 COMPONENTS !!
64
EXTENTS NEW LIMITS
EXTENT TYPE LIMIT DDDATARnn
99 DDASSORnn
99 DSST
gt 5 FILE EXTENTS FCB
SPACE (AC,NI,UI,DS,AC2)
65
V8 QUICK NOTES. FDT INCREASE
V7
I. FIELD NAMEs
ASSO BLOCK 1
V8 20b / FIELD
10b / FIELD
ASSO BLOCK 2
II. SEARCH INDEX
ASSO BLOCK 3
III. SPECIAL NAMES
Eg. SUPER,SUB DE SUPER,SUB FIELDS
ASSO BLOCK 4
V8 x Blocks / FDT
4B / FDT
66
V8 QUICK NOTES. FDT INCREASE Eg.
V8
1
I. (many fields)
V7
I. (many fields)
1
2
2
ADACNV TOVERS81
3
II.
3
III. (many specials)
4
4
II.
5
III. (many specials)
4B / FDT
6
67
V8 QUICK NOTES. FDT INCREASE Eg.
V7
BEFORE
ADAREP PHYSICAL LAYOUT
1-30 CONTROL BLOCKS 31-285
FCBs 286-1305 FDTs
FROM TO DEV TABLE VOLSER BLK
BLK BLKS TYPE TYPE FILE NUMBER 1306 - 1337 32
3390 PPT 0 ADA080 1338 - 1338 1 3390 DSST
0 ADA080 1339 - 1341 3 3390 AC 1
ADA080 1342 - 1346 5 3390 UI 1
ADA080 1347 - 1371 25 3390 NI 1
ADA080 1372 - 1373 2 3390 AC 16
ADA080 1374 - 1413 40 3390 NI 16 ADA080
1507 - 1507
1 3390 AC 10 ADA080 1508 - 1512 5 3390 NI
10 ADA080 1513 - 1517 5 3390 UI 10
ADA080 1518 - 2682 1165 3390 UNUSED 0 ADA080
68
V8 QUICK NOTES. FDT INCREASE Eg.
V8
AFTER
ADAREP PHYSICAL LAYOUT
1-30 CONTROL BLOCKS 31-285
FCBs
FROM TO DEV TABLE VOLSER BLK
BLK BLKS TYPE TYPE FILE NUMBER 286 - 289 4
3390 FDT 1 ADA080 346 - 349 4 3390 FDT
16 ADA080 354 - 357 4 3390 FDT 18
ADA080 1306 - 1337 32 3390 PPT 0
ADA080 1338 - 1338 1 3390 DSST 0
ADA080 1339 - 1341 3 3390 AC 1
ADA080 1342 - 1346 5 3390 UI 1
ADA080 1347 - 1371 25 3390 NI 1
ADA080 1372 - 1373 2 3390 AC 16
ADA080 1374 - 1413 40 3390 NI 16 ADA080
1507 - 1507
1 3390 AC 10 ADA080 1508 - 1512 5 3390 NI
10 ADA080 1513 - 1517 5 3390 UI 10
ADA080 1518 - 1522 5 3390 FDT 10
ADA080 1523 - 2682 1160 3390 UNUSED 0 ADA080
? 5 BLOCKS
69
V8 MISCELLANEOUS
1. GCB IS 2 BLOCKS (RABN 1 AND 2)
2. FDT FIELD OPTION NB (NO BLANK COMPRESSION)
  • z/OS SVC IMPROVEMENTS.
  • - PERFORMANCE IMPROVMENTS
  • - SHIFT FROM SRB TO TCB USAGE (NOTE IN
    MEASUREMENTS)
  • - ALL SERVERS MUST BE APF-AUTHORIZED
  • MPMs
  • ENTIRE NETWORK
  • NATURAL GLOBAL BUFFER POOL
  • ETC.
  • ELSE
  • U0253 ABEND
  • ADAS33 APF Authorization is required

70
BACK TO JUST ADABAS
71
LITTLE KNOWN FEATURES SYNS AND 7X24
REQUIRE NO ACC USE NO UPD USE
72
LITTLE KNOWN FEATURES SYNS AND 7X24
WHAT ARE SYNS FUNCTIONS?
GROUP 1
ALLOCATE DEALLOCATE ASSOPFAC
DATAPFAC CHANGE
DSREUSE ISNREUSE
MAXLRECL MAXDS,NI,UI,AC NEWFIELD
PGMREFRESH RELEASE
RENAME USERISN ON/OFF
GROUP 2
DECREASE DB INCREASE DB DELETE
RECOVER REFRESH
RENUMBER
GROUP 3 (V8)
MUPEX RECORD- SPANNING ON
73
LITTLE KNOWN FEATURES SYNS AND 7X24
WHAT ARE SYNS FUNCTIONS?
GROUP 1
ALLOCATE DEALLOCATE ASSOPFAC
DATAPFAC CHANGE DSREUSE ISNREUSE
MAXLRECL MAXDS,NI,UI,AC NEW
FIELD PGMREFRESH RELEASE
RENAME USERISN ON/OFF
REQUIRE NO ACC USE NO UPD USE
ELSE RSP.CD. 48
74
LITTLE KNOWN FEATURES SYNS AND 7X24 RELEASE
FOR EXAMPLE
AOS F File maintenance D Release
descriptor
Descriptor Name .. BA File Number ......
18 File Name ........ VEHICLES Password
......... In Parallel ...... YES
Enter 'RELEASE' to confirm ..
75
LITTLE KNOWN FEATURES SYNS AND 7X24 xxREUSE
FOR EXAMPLE
AOS F File maintenance M Modify file
parameters
FILE NO. ... 18
FILE NAME .. VEHICLES
ASSO PFAC .......... 3 MAX.
ALLOCATION DATA PFAC .......... 3
UI BLKS PER EXTENT .. 0 MAX. RECL
.......... 10792 NI BLKS PER EXTENT .. 0
DS BLKS PER EXTENT ..
0 NEW FILE NAME ...... VEHICLES
NEW FILE NO. ....... 18 ISN REUSE
............. ON_
WITH RESET ..... ___ USER ISN ........... OFF
IN PARALLEL .... YES
DS REUSE .............. ON_ FILE
PASSWORD ...... WITH RESET .....
___ IN
PARALLEL .... YES ALPHANUM ENCODING .. 0
MIXED DS DEVICE ....... OFF WIDECHAR ENCODING ..
0 PROGRAM REFRESH ....... OFF
76
LITTLE KNOWN FEATURES SYNS AND 7X24 NEWFIELD
FOR EXAMPLE
AOS F File maintenance C Define/modify
FDT A Add new field(s)
File 18 (VEHICLES) In Parallel
.. YES
Enter Password if file is security
protected ...
Level I Name I Length I Format I
Options I ---------------------------
--------------------------- 01 I ZZ I 10_
I A I NU __ __ __ __ __ I __ I __ I
___ I _ I __ __ __ __ __ __ I
77
ADARES REGENERATE. REVISIT
ORIGINAL DB
WHY?
  • DB RECOVERY (AFTER RESTORE)
  • FILE(s) RECOVERY (AFTER RESTORE)
  • NO OUTAGE
  • 3. RE-BLOCK DATABASE
  • 4. CONVERT FILE TO 4b ISN
  • 5. CONVERT FILE TO FRWRD INDEX COMPR
  • 6. REORDER / MOVE FILES
  • 7. INTEGRITY CHECKS / REPAIR
  • 8. TESTING / APPLICATIONS CONVERSIONS
  • 9. DISASTER RECOVERY / MIRRORING

ADARES
RESTORED DB / FILE(s)
EVENT REPLICATOR REBUILD FILES FOR
PERFORMANCE
RECORD LEVEL
78
ADARES REGENERATE. OPTIONS
//DDSIIN DD
DSNPLOG.A DSNPLOG.B
79
ADARES REGENERATE. EOF PLOG
//DDSIIN DD
DSNPLOG.A DSNPLOG.B
DB LEVEL IMPLIES AUTOBACKOUT
FILE LEVEL IMPLIES NO AUTOBACKOUT
80
ADARES REGENERATE. EOF PLOG
81
ADARES REGENERATE. EOF PLOG
APPLY
ALL UPDATES APPLIED TO EOF
? DATA INTEGRITY ? BI/AI/DVT/SPANNED ?
82
ADARES REGENERATE. TOCP
//DDSIIN DD
DSNPLOG.A DSNPLOG.B
DB LEVEL or FILE LEVEL
EOF PLOG or TOCP
VS.
(OPTION, TOCP ONLY)
TOCP IMPLIES NO AUTOBACKOUT
REGENERATE AUTOBACKOUT
Note TOCP has precedence over DB or FILE level
83
ADARES REGENERATE. TOCP,DB LEVEL
DB LEVEL
//DDKARTE
APPLY
ADARES REGENERATE ADARES PLOGNUMnnnn ADARES
TOCPHERE,TOBLKbb
ALL UPDATES APPLIED UP TO CHECKPOINT HERE
84
ADARES REGENERATE. TOCP,DB LEVEL
DB LEVEL
//DDKARTE
APPLY
ADARES REGENERATE ADARES PLOGNUMnnnn ADARES
TOCPHERE,TOBLKbb ADARES AUTOBACKOUT
BACK
ALL UPDATES BACKED OUT TO LAST ET BEFORE CKPT
85
ADARES REGENERATE. TOCP,FILE LEVEL
FILE LEVEL
//DDKARTE
ADARES REGENERATE ADARES FILE1 ADARES
PLOGNUMnnnn ADARES TOCPHERE,TOBLKbb
APPLY
FILE LEVEL
//DDKARTE
ADARES REGENERATE ADARES FILE1,CONTINUE ADARES
PLOGNUMnnnn ADARES TOCPHERE,TOBLKbb
FILE LEVEL
//DDKARTE
ADARES REGENERATE ADARES FILE1 ADARES
PLOGNUMnnnn ADARES TOCPHERE,TOBLKbb ADARES
AUTOBACKOUT
ALL UPDATES FOR FILE 1 APPLIED UP TO CHECKPOINT
HERE
86
ADARES REGENERATE. TOCP,FILE LEVEL
APPLY
FILE LEVEL
//DDKARTE
ADARES REGENERATE ADARES FILE1,CONTINUE ADARES
PLOGNUMnnnn ADARES TOCPHERE,TOBLKbb ADARES
AUTOBACKOUT
BACK
ALL UPDATES FOR FILE 1 BACKED OUT TO LAST ET
BEFORE CHECKPOINT
87
ADARES REGENERATE. FILE vs DB LEVEL
REGEN 1
PAUSE WORK
REGEN 2
PAUSE DATA INTEGRITY, BI/AI/DVT/SPANNED
88
ADARES REGENERATE. FILE vs DB LEVEL
USE FILE or DB LEVEL REGENERATE ?
PERFORMANCE THE SAME
FILE LEVEL MUCH MORE FLEXIBLE TO STOP/START REGENS
FILE LEVEL ALLOWS TO REMOVE/ADD FILES FROM REGEN
LIST
89
ADARES REGENERATE. FILE LEVEL JCL
//DDKARTE DD ADARES REGENERATE ADARES
PLOGNUMnnnn // DD DSNADABAS.CNTL(FILES)
ADABAS.CNTL(FILES)
ADARES FILE001 ADARES FILE002 ADARES FILE003
ADARES FILE255
ADARES FILE001,002,003,004 ADARES
FILE005,006,007,008 ADARES FILE009,010,011,012
ADARES FILE252,253,254,255
OR
90
ADARES REGENERATE. TOCP,CHOICES
91
ADARES REGENERATE. CHECKPT REPORT
ADARES COPY UTICPLIST
CPTYPE4F - REUSE DSON FOR FILE 241
CPNAMESYNS, CPBLK3, SESSION22,
JOBNAMEMYUSER CPTYPE4F - REUSE DSOFF FOR
FILE 241 CPNAMESYNS, CPBLK4,
SESSION22, JOBNAMEMYUSER
NOTE SYNP,SYNV and UTILITY SYNS
92
ADARES REGENERATE. NOTES
ADARES CAN BE RERUN IF PARMS DO NOT CHANGE ! Eg.
NOAUTOBACKOUT to No NOAUTOBACKOUT
SYNS CHECKPOINTS ARE APPLIED BY ADARES SYNP
CHECKPOINTS ARE NOT (COND.CODE 4)
ADARES SHOULD ONLY BE RUN MPM, NOT SINGLE USER
MODE
ADARES SHOULD USE MTRYES NOTE ENSURE ADARUN NAB
gt 16 X NT
93
ADARES REGENERATE. MTRYES
94
ADARES REGENERATE. BACKOUT
UPDATES . . .
GOAL
CHKPT EOF.PLOG
95
ADARES REGENERATE. BACKOUT
JCL
STEP-1 COPY TO TAPE STEP-2 ADARES
BACKOUT
BACKWARD READABLE TAPE IBM APARs TAPE COMPRESSION
BACKOUT THE BACKOUT ?? BACKS OUT TO ??
96
UNIQUE DESCRIPTORS (UQ DE).
NOTE VALUE CHECK MADE AGAINST NI VALUE
97
UQ DE.
OLDE PROBLEM, IN THEORY
1,AA,04,A,DE,UQ
ASSO INVERTED LIST
USER 1
USER 2
C11 / 1 / 1
SOLUTION
98
UQ DE. LDEUQP
ONE ENTRY PER A1,E1 UQ.DE FOR EACH OPEN
TRANSACTION. ONLY BEFORE IMAGE REQUIRED (IN CASE
OF BACKOUT).
ALL A1/N1/N2 CHECK INVERTED LIST AND LDEUQP
99
UQ DE. LDEUQP
FORMULA
  1. 2 HI-WATER MARK

2. FOR UQ.DES (AVG. CONCURRENT
TRANSACTIONS) (AVG. DELETE/UPDATES PER
TRANSACTION) (15 AVG.UQ.DE.LENGTH)
UQ.DE. HEADER RESERVED
POINTER TO U.Q.E. FILE NUMBER
UQ.DE. NAME UQ.DE. FORMAT
UQ.DE.LENGTH
100
UQ DE. LDEUQP
HI-WATER MARK
FOR EXAMPLE
Pool / Queue I Size I Used I Used
I ------------------------------------------------
- Unique DE Pool(DUQ) I 50000 I 4300
I 8.6 I
OP. CONS.CMD DRES DOES NOT DISPLAY SHUTDOWN
DDPRINT DOES DISPLAY ADADBS DRES
DOES DISPLAY AOS
DOES DISPLAY
NOTE ADADBS REFRESHSTAT DOES NOT RESET
101
UQ DE. LDEUQP PERFORMANCE ISSUES
  • FILL LDEUQP WITH
  • 1000 ENTRIES
  • 2000 ENTRIES
  • 4000 ENTRIES
  • 2.EACH ENTRY FOR
  • FILE X, UQ.DEAA

FOR EXAMPLE
MEASURE RELATIVE ADABAS CPU
102
UQ DE. LDEUQP PERFORMANCE ISSUES
4000 ENTRIES
RELATIVE ADABAS CPU TIME
17x
2000 ENTRIES
10x
1000 ENTRIES
7x
6x
5x
3x
BB
DD,UQ
AA,UQ
103
UQ DE. REMOVAL
FDT
1,AA,04,A,DE,UQ (UQ BIT SET)
104
UQ DE. REMOVAL
FDT FNR 19
  • DETERMINE FDT BLOCKS
  • DETERMINE OFFSET INTO FDT
  • LOCK FILE (IF DATABASE UP)
  • ENSURE BLOCK NOT IN LBP
  • (IF DATABASE UP)
  • 5. ADAZAP FDT
  • (USE DIFFERENT SVC IF DB UP)
  • 6. UNLOCK FILE
  • 7. (OPT) VERIFY WITH ADAREP

1,ND,09,A,DE,UQ (UQ BIT SET)
105
UQ DE. REMOVAL 1. DETERMINE FDT BLOCKS
ADABAS V7 FDT1 31 MAXFILES ( FNR 1 )
x 4 FDTN FDT1 3
Eg. V7 FNR 19 MAXFILES 255 FDT1 31
255 (19 1 ) x 4 358 FDTN 358 3
361
106
2. ADARPRI ASSO RABN 358 - 361 DDDRUCK (RABN 358)
FIND ND
107
UQ DE. REMOVAL 5. ADAZAP
DE FLAG X09 0000 1001 UQ BIT X08 0000
1000
//DDCARD DD ADARUN
SVCXXX ADARUN PROGRAMADAZAP
//DDKARTE DD
ADAZAP MC
ADAZAP ASSO RABN358,OFFSETX'0149' ADAZAP
VERX'09' ADAZAP REPX'01'
OR X0291
108
UQ DE. PROGRAM ISSUES
1. FOR UQ UPDATES, KEEP TRANSACTIONS SMALL
2. IF COMPRESSION DEFINED AS NU, BLANKS ARE NOT
CHECKED
3. BEWARE OF FIELDS AT END OF RECORD TREATED AS NU
4. REALLY, REALLY JUSTIFY
109
EXCP vs EXCPVR
VR Page frames containing the IO control blocks
are page-fixed
TO USE ALL ADABAS LOADLIBS (STEPLIB) ARE
APF-AUTHORIZED
110
EXCP vs EXCPVR
TO TEST 1. START NUC WITH APF-LIBS OR NOT
2. RUN PROGRAM (64K IOS, 1.1M COMMANDS)
3. END NUC 4. MEASURE (SECONDS)
TCB SRB
CMDTIME DURATION ALTERNATE
EXCP/EXCPVR RUN EACH 5 TIMES (VERSION 7.4.4)
111
EXCP vs EXCPVR RESULTS
SRB
TCB
CMDTIME
DURATION
ABOUT 2 BETTER WITH EXCPVR
Write a Comment
User Comments (0)
About PowerShow.com