View previous topic :: View next topic
|
Author |
Message |
snehal
New User
Joined: 12 Dec 2006 Posts: 14 Location: pune
|
|
|
|
Hi,
VSAM file has defined with the primary key as CUST-ID and alterant key as CUST-NAME and CUST-CDE.
Now My program A would require all the records from program B by reading vsam file matching to CUST-NAME and CUST-CDE(these values are passed by program A) and send back all the matching row. Right now my program is working fine but when I have seen AIX file, it already have LRECL as 30K and it soon cross 32K limit for the duplicates. (As per my knowledge, there is limit for the duplicates corresponding to alternate key i.e. 32K).
Can someone please help me to overcome this 32K limit or suggest alternative to alternate indexes?
kindly note that,
- We already suggested to have maint. job to remove the old records in order to avoid the limit but client refuses.
Thanks,
Snehal |
|
Back to top |
|
|
Phrzby Phil
Senior Member
Joined: 31 Oct 2006 Posts: 1042 Location: Richmond, Virginia
|
|
|
|
I am confused.
How does the number of records in the index affect the record length?
I think you do not understand the terms that you are using. |
|
Back to top |
|
|
snehal
New User
Joined: 12 Dec 2006 Posts: 14 Location: pune
|
|
|
|
Thanks Phil for the reply...
As per my understanding data in AIX will be store as -
Alternet Key and then all the duplicates associated with the alternet key in a single record
Since alternate key is of length 20 bytes and because of 32K limit we can have maximum 1630 duplicate records(32K/20) associated with the alternate key.
So once my VSAM file has more than 1630 records associated with alternate key then all the LRECL will be exausted and there would be no space in alternate index VSAM file to write additional duplicates records associated with the alternate key.
so it does not affect index component however it sure affects the data components. |
|
Back to top |
|
|
Phrzby Phil
Senior Member
Joined: 31 Oct 2006 Posts: 1042 Location: Richmond, Virginia
|
|
|
|
Thanks for the explanation.
I haven't used VSAM in years, so we'll have to wait for someone else to chime in.
1630 does sound like a measly number to cause a problem, though.
I googled "vsam aix duplicates" and found: ibmmainframes.com/about46217.html
Does it help? |
|
Back to top |
|
|
Akatsukami
Global Moderator
Joined: 03 Oct 2009 Posts: 1788 Location: Bloomington, IL
|
|
|
|
snehal wrote: |
As per my understanding data in AIX will be store as -
Alternet Key and then all the duplicates associated with the alternet key in a single record
Since alternate key is of length 20 bytes and because of 32K limit we can have maximum 1630 duplicate records(32K/20) associated with the alternate key.
So once my VSAM file has more than 1630 records associated with alternate key then all the LRECL will be exausted and there would be no space in alternate index VSAM file to write additional duplicates records associated with the alternate key.
so it does not affect index component however it sure affects the data components. |
I believe that your "understanding" is incorrect; see Mr. Sample's explanations in this thread. |
|
Back to top |
|
|
snehal
New User
Joined: 12 Dec 2006 Posts: 14 Location: pune
|
|
|
|
Akatsukami, thanks a lot for pointing to the sample's thread...it's resolved now... Yes as per his thread we can create AIX greater than 32K LRECL but each alternate key at max has maximum 32767 duplicates allowed in base file. |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10873 Location: italy
|
|
|
|
Quote: |
Yes as per his thread we can create AIX greater than 32K LRECL but each alternate key at max has maximum 32767 duplicates allowed in base file. |
and ???
pretty difficult to understand what You are trying to tell |
|
Back to top |
|
|
|