View previous topic :: View next topic
|
Author |
Message |
aakar
New User
Joined: 08 Apr 2008 Posts: 36 Location: mumbai
|
|
|
|
Am trying to make large number of entries in a VSAM cluster having an AIX,
Code: |
In VSAM,
Primary key Alternate Key Data
00000002 02ABCDEFGHIJK0010020 ...........
00000003 02ABCDEFGHIJK0010020 ...........
00000004 03ABCDEFGHIJK0010020 ...........
00000005 03ABCDEFGHIJK0010020 ...........
00000006 02ABCDEFGHIJK0010020 ...........
00000007 02ABCDEFGHIJK0010020 ...........
|
In AIX, all record numbers belonging to common AIX gets stored in row
Code: |
------------------- --------------------------------------------
02ABCDEFGHIJK0010020 00000002000000030000000600000007
03ABCDEFGHIJK0010020 0000000400000005
|
But when i try to insert very large number of entries, i get an abend after
some records.
Not all records got loaded in VSAM. I tried inserting a record in into VSAM with a different AIX and it works. however with same AIX it does not insert. the AIX seems to have got full here.
What parameter(AIX length etc) should i increase here while creating AIX or is there a probem with the cluster itself. I am new to AIXs so please give reference links if any. |
|
Back to top |
|
|
aakar
New User
Joined: 08 Apr 2008 Posts: 36 Location: mumbai
|
|
|
|
i get an abend when i insert large number of entries with same AIX value |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8697 Location: Dubuque, Iowa, USA
|
|
|
|
What is the exact error message you're getting, and what is the definition of the AIX? What's the base cluster definition, too? |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello,
If you post the define for the aix, some info about the number of entries for the problem value and the diagnostic info (at least the vsam return code and any other diagnostic info that is presented) when the job is run we may be able to help. |
|
Back to top |
|
|
aakar
New User
Joined: 08 Apr 2008 Posts: 36 Location: mumbai
|
|
|
|
Here are the Specifications?
Code: |
DEFINE CLUSTER(NAME (MYVSAM.SPLIT.VFILE) -
FREESPACE(10,10) -
KEYS(8,0) -
RECORDSIZE(700,700) -
INDEXED -
TRACKS(1,10) -
SHR(4,4) SPEED IMBED -
UNIQUE) -
DATA(NAME (MYVSAM.SPLIT.VFILE.DATA) -
CONTROLINTERVALSIZE(4096) -
FREESPACE(10,10)) -
INDEX(NAME (MYVSAM.SPLIT.VFILE.INDEX) )
DEFINE AIX -
( -
NAME(MYVSAM.SPLIT.VFILE.AIX) -
RELATE(MYVSAM.SPLIT.VFILE) -
KEYS(20,9) -
TRACKS(1,10) -
SHAREOPTIONS(4,4) SPEED IMBED -
NONUNIQUEKEY UPGRADE -
) -
DATA (NAME (MYVSAM.SPLIT.VFILE.AIX.DATA) -
CONTROLINTERVALSIZE(4096) -
FREESPACE(10,10) -
) -
INDEX (NAME (MYVSAM.SPLIT.VFILE.INDEX) -
)
|
And i am attempting to repro large number of records(>10,000) having same alternate key value to the cluster. This is the error i am getting:
Code: |
IDCAMS SYSTEM SERVICES TIME: 19:3
IF LASTCC=0 THEN
REPRO INDATASET(MYFLAT.FILE) -
OUTDATASET(MYVSAM.SPLIT.VFILE)
IDC3302I ACTION ERROR ON MYVSAM.SPLIT.VFILE
IDC3351I ** VSAM I/O RETURN CODE IS 108 - RPLFDBWD = X'8F08046C'
IDC31467I MAXIMUM ERROR LIMIT REACHED.
IDC0005I NUMBER OF RECORDS PROCESSED WAS 4071
IDC3003I FUNCTION TERMINATED. CONDITION CODE IS 12
IDC0002I IDCAMS PROCESSING COMPLETE. MAXIMUM CONDITION CODE WAS 12
|
IBM has given following formula for calculation of AIX length:
RECSZ = 5 + AIX Length + [(primary key length)*(no. of records with this common Alternate key)
In my case,
= 5 + 20 + [(8)*4072]
= 32600 (this is the maximum available aix length by IBM)
but i checked this out on the web that AIX length can be increased beyond this value.See NONUNIQUEKEY in below link:
[url=http://gsf-soft.com/Documents/VSAM-AIX.shtml#upgrade ]
[/url]
But when i tried to create an AIX with a record size greater than 32600, define aix fails giving error,
Code: |
IGD17103I CATALOG ERROR WHILE DEFINING VSAM DATA SET
MYVSAM.SPLIT.VFILE.AIX
RETURN CODE IS 96 REASON CODE IS 4 IGG0CLEQ
IGD17219I UNABLE TO CONTINUE DEFINE OF DATA SET
MYVSAM.SPLIT.VFILE.AIX
IDC3014I CATALOG ERROR
IDC3009I ** VSAM CATALOG RETURN CODE IS 96 - REASON CODE IS IGG0CLEQ-4
IDC3003I FUNCTION TERMINATED. CONDITION CODE IS 12
|
|
|
Back to top |
|
|
Anuj Dhawan
Superior Member
Joined: 22 Apr 2006 Posts: 6250 Location: Mumbai, India
|
|
|
|
Quote: |
108 The RECLEN specified was larger than the maximum allowed, equal to 0, or smaller than the sum of the length and the displacement of the key field of the base cluster or related alternate index (AIX). The RECLEN was not equal to the slot size specified for a relative record data set |
|
|
Back to top |
|
|
Anuj Dhawan
Superior Member
Joined: 22 Apr 2006 Posts: 6250 Location: Mumbai, India
|
|
Back to top |
|
|
expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8797 Location: Welsh Wales
|
|
|
|
Have you noticed that the index component of both the base cluster and the AIX have the exact same name ? |
|
Back to top |
|
|
expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8797 Location: Welsh Wales
|
|
|
|
Just had yet another read through here ..........
Suggestion - build and load the base cluster first. See if any errors occur during this process.
second - Define and relate the AIX and PATH
last - build the index from the base cluster. This is usually much faster than dynamically updating the AIX with every new record added. |
|
Back to top |
|
|
aakar
New User
Joined: 08 Apr 2008 Posts: 36 Location: mumbai
|
|
|
|
thanks for the reference link anuj.
expat,
I made an error here, the name of AIXs index component is
MYVSAM.SPLIT.VFILE.AIX.INDEX in my test job, made a mistake while changing the names before posting in the forum.So that is not the issue.
i created cluster first, then created the AIX. Both jobs ran fine giving 0 return codes for each step. Then i did the repro in a separate job.
These are the define PATH & BLDINDEX statements :
Code: |
DEFINE PATH -
( -
NAME(MYVSAM.SPLIT.VFILE.PATH) -
PATHENTRY(MYVSAM.SPLIT.VFILE.AIX) -
UPDATE -
)
BLDINDEX INDATASET(MYVSAM.SPLIT.VFILE) -
OUTDATASET(MYVSAM.SPLIT.VFILE.AIX)
|
Please advise if the BLDINDEX has to be corrected.
Also would like t o repeat my previous question again:
Can we have a AIX with Recsz greater than 32600? |
|
Back to top |
|
|
expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8797 Location: Welsh Wales
|
|
|
|
Quote: |
Also would like t o repeat my previous question again:
Can we have a AIX with Recsz greater than 32600? |
What happens when you try to define an AIX with a record length greater than 32600 ?
If you8 have problems defining it, please post the source statements and the error messages for us to look at. |
|
Back to top |
|
|
aakar
New User
Joined: 08 Apr 2008 Posts: 36 Location: mumbai
|
|
|
|
Have posted the return code in the above, posting again
But when i tried to create an AIX with a record size greater than 32600,
Code: |
DEFINE AIX -
( -
NAME(MYVSAM.SPLIT.VFILE.AIX) -
RELATE(MYVSAM.SPLIT.VFILE) -
KEYS(20,9) -
RECORDSIZE(4086 66000) -
TRACKS(1,10) -
SHAREOPTIONS(4,4) SPEED IMBED -
NONUNIQUEKEY UPGRADE -
) -
DATA (NAME (MYVSAM.SPLIT.VFILE.AIX.DATA) -
CONTROLINTERVALSIZE(4096) -
FREESPACE(10,10) -
) -
INDEX (NAME (MYVSAM.SPLIT.VFILE.INDEX) -
)
|
define aix fails giving error,
Code: |
IGD17103I CATALOG ERROR WHILE DEFINING VSAM DATA SET
MYVSAM.SPLIT.VFILE.AIX
RETURN CODE IS 96 REASON CODE IS 4 IGG0CLEQ
IGD17219I UNABLE TO CONTINUE DEFINE OF DATA SET
MYVSAM.SPLIT.VFILE.AIX
IDC3014I CATALOG ERROR
IDC3009I ** VSAM CATALOG RETURN CODE IS 96 - REASON CODE IS IGG0CLEQ-4
IDC3003I FUNCTION TERMINATED. CONDITION CODE IS 12
|
As per this link it should work fine,
gsf-soft.com/Documents/VSAM-AIX.shtml#upgrade |
|
Back to top |
|
|
expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8797 Location: Welsh Wales
|
|
|
|
Try it again, but without the CISZ parameter |
|
Back to top |
|
|
aakar
New User
Joined: 08 Apr 2008 Posts: 36 Location: mumbai
|
|
|
|
tried it again by removing the CISZ parameter from AIXs Data component
but still giving same RETURN CODE = 96. |
|
Back to top |
|
|
expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8797 Location: Welsh Wales
|
|
|
|
This works for me - but where did you get the 4086 as the mimimum record size from ?
Code: |
DEFINE AIX (NAME('Base Cluster AIX') -
RECORDSIZE(30 66000) KEYS(10 13) -
TRACKS(10 10) -
RELATE('Base Cluster') NONUNIQUEKEY UPGRADE)
|
|
|
Back to top |
|
|
aakar
New User
Joined: 08 Apr 2008 Posts: 36 Location: mumbai
|
|
|
|
Hey it worked for me too....
Actually i changed my track size to (10,10) and it works...thanks A LOT
u helped a lot.... |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8697 Location: Dubuque, Iowa, USA
|
|
|
|
Quote: |
but where did you get the 4086 as the mimimum record size from ? |
expat, last I heard the first number (even for AIX) is the average record length, not minimum. |
|
Back to top |
|
|
|