MVSFORUMS.com Forum Index MVSFORUMS.com
A Community of and for MVS Professionals
 
 FAQFAQ   SearchSearch   Quick Manuals   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Duplicates in Alternate Index

 
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Data Management
View previous topic :: View next topic  
Author Message
chandhroo
Beginner


Joined: 02 Dec 2002
Posts: 36
Topics: 13

PostPosted: Mon Dec 23, 2002 8:45 am    Post subject: Duplicates in Alternate Index Reply with quote

Could anyone please tell me, is there any parameter to limit the number of duplicates in alternative index? Actually I'm getting error saying that duplicates exceeds the limit in alternative index. I don't know how to fix this error.

--Chandru
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12375
Topics: 75
Location: San Jose

PostPosted: Mon Dec 23, 2002 10:11 am    Post subject: Reply with quote

Chandhroo,

I don't think there is a limit for the duplicates on the alternate index.The no: of duplcates on alternate index depends on how the alternate index is defined.The parameter Recordsize determines the no: od duplicates on the alternate index.

RECORDSIZE(average maximum):specifies the average and maximum length, in bytes, of an alternate index record.

For a KSDS
Code:

RECORD SIZE = 5 + ALTERNATE KEY LENGTH + ( n * PRIME KEY LENGTH )

where 'n' is the number of duplicates

For an ESDS:
Code:

RECORD SIZE = 5 + ALTERNATE KEY LENGTH + ( n * 4 )


Assuming there can be a maximum of 50 duplicates,for a ksds with Prime Key length = 10 and ALT Key length = 20,RECORDSIZE could be defined as RECORDSIZE (275 525).

Using the above formula we have:
AVG rec length = 5 + 20 + (25 * 10) = 275 (assuming an average of 25 duplicates)
MAX rec length = 5 + 20 + (50 * 10) = 525 (assuming 50 duplicates)

So check the alternate index definition and calculate it accordingly

Hope this helps...

cheers

kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
chandhroo
Beginner


Joined: 02 Dec 2002
Posts: 36
Topics: 13

PostPosted: Tue Dec 24, 2002 6:00 am    Post subject: Reply with quote

Kolusu,
It's very excellent to see your response. It's really very useful. However in my case record size is not used when defining AIX, BUFFERSPACE is used, could you please tell me how its releated to record size and duplicates. Please see my AIX define step.
Code:

DEFINE AIX -                   
    (NAME(&COAV..AIX4) -       
     RELATE (&COAV..C9999) -   
     KEYS (1 45) -             
     FOR(9999) -               
     TRK(2 1) -                 
     IMBED -                   
     REPLICATE -               
     SHAREOPTIONS (3 3) -       
     SPEED -                   
     NONUNIQUEKEY -             
     BUFFERSPACE (32768)) -     
 DATA -                         
     (NAME(&COAV..AIX4.DATA) - 
     CISZ(4096)) -             
 INDEX -                       
     (NAME(&COAV..AIX4.INDEX) -
     CISZ(2048))               
 DEF PATH -                     
     (NAME(&COAV..PATH4) -     
     PENT(&COAV..AIX4) UPDATE) 

--Chandru
Back to top
View user's profile Send private message
Mike Tebb
Beginner


Joined: 02 Dec 2002
Posts: 20
Topics: 0
Location: Yorkshire, England

PostPosted: Tue Dec 24, 2002 9:32 am    Post subject: Reply with quote

Bufferspace is nothing to do with your recordsize.

As you have not specified a recordsize I believe you should get a default
maximum of 32600 (spanned) or 4089 (non-spanned). The default is spanned so you should get 32600 (display the attributes using FILEAID or IDCAMS to check this).

If your record size is 32600 then it would suggest that you have a lot of duplicate alternate indexes and maybe you should review the data used for that alternate key.
_________________
Cheers - Mike
Back to top
View user's profile Send private message
chandhroo
Beginner


Joined: 02 Dec 2002
Posts: 36
Topics: 13

PostPosted: Wed Jan 08, 2003 11:46 am    Post subject: Reply with quote

Thanks Mike,
Could you please me is there any limitation in the record size parameter. Im getting error as below.
IGD17103I CATALOG ERROR WHILE DEFINING VSAM DATA SET BDV4LB.RAJ.VSAM.CAS.COA.NCHO.AIX1
RETURN CODE IS 96 REASON CODE IS 4 IGG0CLEQ
IGD17219I UNABLE TO CONTINUE DEFINE OF DATA SET BDV4LB.RAJ.VSAM.CAS.COA.NCHO.AIX1

IDC3014I CATALOG ERROR
IDC3009I ** VSAM CATALOG RETURN CODE IS 96 - REASON CODE IS IGG0CLEQ-4


See below the statement:
Code:

DEFINE AIX -                                           
    (NAME(BDV4LB.RAJ.VSAM.CAS.COA.NCHO.AIX1) -         
     RELATE (BDV4LB.RAJ.VSAM.CAS.COA.NCHO.C9999) -     
     KEYS (5 0) -                                       
     RECSZ(58760, 58760) -                             
     FOR(9999) -                                       
     TRK(2 1) -                                         
     IMBED -                                           
     REPLICATE -                                       
     SHAREOPTIONS (3 3) -                               
     SPEED -                                           
     NONUNIQUEKEY -                                     
     BUFFERSPACE (32768)) -                             
 DATA -                                                 
     (NAME(BDV4LB.RAJ.VSAM.CAS.COA.NCHO.AIX1.DATA) -   
     CISZ(4096)) -                                     
 INDEX -                                               
     (NAME(BDV4LB.RAJ.VSAM.CAS.COA.NCHO.AIX1.INDEX) - 
     CISZ(2048))
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12375
Topics: 75
Location: San Jose

PostPosted: Wed Jan 08, 2003 5:05 pm    Post subject: Reply with quote

Chandroo,

can you post your cluseter definition also.

Thanks

Kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Mike Tebb
Beginner


Joined: 02 Dec 2002
Posts: 20
Topics: 0
Location: Yorkshire, England

PostPosted: Thu Jan 09, 2003 3:33 am    Post subject: Reply with quote

Change your TRK parameter to CYL.
_________________
Cheers - Mike
Back to top
View user's profile Send private message
chandhroo
Beginner


Joined: 02 Dec 2002
Posts: 36
Topics: 13

PostPosted: Fri Jan 10, 2003 8:13 am    Post subject: Reply with quote

Kolusu,
Please find cluster definition:
' DEFINE CLUSTER - ',
' (NAME(&VSAMOUT..C9999) - ',
' CYL(10 1) - ',
' FOR (9999) - ',
' RECSZ (80 80) - ',
' KEYS (47 0) - ',
' IMBED - ',
' FREESPACE (22 10) - ',
' REPLICATE - ',
' SPEED - ',
' BUFFERSPACE (87920) - ',
' SHAREOPTIONS (3 3)) - ',
' DATA - ',
' (NAME(&VSAMOUT..DATA) - ',
' CISZ(4096)) - ',
' INDEX - ',
' (NAME(&VSAMOUT..INDEX) - ',
' CISZ(2048)) ',
' REPRO INFILE(QSAMIN) - ',
' ODS(&VSAMOUT..C9999) ',
Back to top
View user's profile Send private message
chandhroo
Beginner


Joined: 02 Dec 2002
Posts: 36
Topics: 13

PostPosted: Fri Jan 10, 2003 8:17 am    Post subject: Reply with quote

Could you please tell me is there any way to find out number of duplicates. For example in my case, i would to display some information if the number duplicates is greater than 1000. Thanks in advance.

Chandru
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Data Management All times are GMT - 5 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


MVSFORUMS
Powered by phpBB © 2001, 2005 phpBB Group