Endevor

 View Only
Expand all | Collapse all

Automating ELIB tuning - dataset hardcoding versus symbolics

  • 1.  Automating ELIB tuning - dataset hardcoding versus symbolics

    Posted Jul 18, 2024 01:43 PM
    I could not sleep last night so was reading article 9558 [Tips and Techniques for Managing Endevor ELIBs (broadcom.com)](https://knowledge.broadcom.com/external/article/9558/tips-and-techniques-for-managing-endevor.html)
     
    This covers running ELIB ANALYZE to capture some key fields and comparing against other fields and thresholds to determine action required and what that action is.
     
    I thought I could write a program to run through the ELIBs and find conditions that need actions.
     
    Probably this has been done before ?
     
    I start by listing the datasets to be analysed. I can do this as I know the naming convention used at my site for Endevor datasets and suffixed .BASE or .DELTA 
     
    Now some of these might not actually be in use by Endevor and also it would be good to identify the library names without needing to know the site  naming convention.
     
    Previously I have not paid much attention to the DATASET option on the Environment panel but it looks like it lists the datasets and whether ELIB.
     
    It also seems to provide another interface to update type definitions. 
     
    Using CSV report I can list the actual dataset names but some are defined using symbolics as part of the DSN e.g. &C1EN..&C1ST instead of PROD.STAGE2
     
    I could make the program reading the CSV to get the list of ELIBs resolve these but being lazy I thought I could just use the DATASET panel to change the symbolics to hard coding for the environment and stage I am updating.
     
    What could possibly go wrong ?  


  • 2.  RE: Automating ELIB tuning - dataset hardcoding versus symbolics

    Broadcom Employee
    Posted Jul 18, 2024 03:05 PM
    Hi John,

    First off, the &C1 symbolic values allow you to use the exact same Type
    definition across multiple stages / environments. Hard-coding them means
    more work for you & your team as you start cloning them for new systems,
    stages, etc.

    If you do hard-code / move away from &C1's in the Type definition, I
    recommend you use Batch Admin (see CSIQJCL member ENBP1000) to swap out
    your &C1 variables, not the the Dataset Menu (option #8) from the
    Environment menu.

    Side bar on the Dataset Menu. The Dataset Menu shows all the Type
    definition datasets; base, delta, source output, and include libs, for a
    given System / Stage. It does not show you which Types use a dataset (and
    this is where it becomes dangerous). If, for example, you share a base lib
    across multiple Types, an update from the Datatset Menu will change all
    Type definitions which use that base lib. Also note that the audit stamp on
    the Type definition panel is *not *updated to reflect this update - this
    can be very confusing to teammates.

    If it were me, I'd leave the &C1's in-place and use the Table Tool (comes
    with Endevor in your CSIQCLS0 lib, member ENBPIU00) to do the symbolic
    substitution in your ELIB ANALYZE report job. You've got all the
    information on one line from the CSV report. For example, if there's an
    &C1EN in any given base lib, that value is shown in a different field on
    the same line. Please reach out if you need Table Tool examples. It's rexx
    based but you don't need an in-depth knowledge of rexx to use it.

    *Dave Harding *
    Client Services Consultant • Mainframe Software Division
    Broadcom Software
    Mobile 317-403-1740 | dave.harding@broadcom.com
    Upcoming vacation: July 31 - August 4

    --
    This electronic communication and the information and any files transmitted
    with it, or attached to it, are confidential and are intended solely for
    the use of the individual or entity to whom it is addressed and may contain
    information that is confidential, legally privileged, protected by privacy
    laws, or otherwise restricted from disclosure to anyone else. If you are
    not the intended recipient or the person responsible for delivering the
    e-mail to the intended recipient, you are hereby notified that any use,
    copying, distributing, dissemination, forwarding, printing, or copying of
    this e-mail is strictly prohibited. If you received this e-mail in error,
    please return the e-mail to the sender, delete it from your computer, and
    destroy any printed copy of it.




  • 3.  RE: Automating ELIB tuning - dataset hardcoding versus symbolics

    Posted Jul 19, 2024 06:55 AM

    Is there a recommendation to move to PDSe instead of ELIBs? Or did I imagine that?




  • 4.  RE: Automating ELIB tuning - dataset hardcoding versus symbolics

    Broadcom Employee
    Posted Jul 19, 2024 09:10 AM
    The recommendation for deltas is PDS-E but there's a caveat. PDS-E cannot
    span volumes (and ELIBs can) so if you've got tons and tons of delta
    records (i.e. auto-consolidate not enabled and / or sharing a delta across
    many types / systems) then stick with ELIBs.

    *Dave Harding *
    Client Services Consultant • Mainframe Software Division
    Broadcom Software
    Mobile 317-403-1740 | dave.harding@broadcom.com
    Upcoming vacation: July 31 - August 4


    On Fri, Jul 19, 2024 at 6:55 AM Emlyn Williams via Broadcom <
    Mail@broadcom.com> wrote:

    > Is there a recommendation to move to PDSe instead of ELIBs? Or did I
    > imagine that? -posted to the "Endevor" community
    > [image: Broadcom] <https: community.broadcom.com="">
    > Endevor
    > <https: community.broadcom.com/communities/community-home/digestviewer?communitykey="592eb6c9-73f7-460f-9aa9-e5194cdafcd2">
    > Post New Message <broadcom-caendevor@connectedcommunity.org>
    > Re: Automating ELIB tuning - dataset hardcoding versus symbolics
    > <https: community.broadcom.com/discussion/automating-elib-tuning-dataset-hardcoding-versus-symbolics#bm267ad4e1-eb39-433c-9c8e-0190caa17fc9="">
    > Reply to Group
    > <broadcom_caendevor_267ad4e1-eb39-433c-9c8e-0190caa17fc9@connectedcommunity.org?subject=re:+automating+elib+tuning+-+dataset+hardcoding+versus+symbolics> Reply
    > to Sender
    > <https: community.broadcom.com/communities/all-discussions/postreply?messagekey="267ad4e1-eb39-433c-9c8e-0190caa17fc9&ListKey=6c02d13b-c28e-4794-b86a-c8b767e00498&SenderKey=85d4ebf7-4658-49e7-9c85-9a3e09ea01c7">
    > [image: Emlyn Williams]
    > <https: community.broadcom.com/network/members/profile?userkey="85d4ebf7-4658-49e7-9c85-9a3e09ea01c7">
    > Jul 19, 2024 6:55 AM
    > Emlyn Williams
    > <https: community.broadcom.com/network/members/profile?userkey="85d4ebf7-4658-49e7-9c85-9a3e09ea01c7">
    >
    > Is there a recommendation to move to PDSe instead of ELIBs? Or did I
    > imagine that?
    > *Reply to Group Online
    > <https: community.broadcom.com/communities/all-discussions/postreply?messagekey="267ad4e1-eb39-433c-9c8e-0190caa17fc9&ListKey=6c02d13b-c28e-4794-b86a-c8b767e00498">*
    > *Reply to Group via Email
    > <broadcom_caendevor_267ad4e1-eb39-433c-9c8e-0190caa17fc9@connectedcommunity.org?subject=re:+automating+elib+tuning+-+dataset+hardcoding+versus+symbolics>*
    > *View Thread
    > <https: community.broadcom.com/discussion/automating-elib-tuning-dataset-hardcoding-versus-symbolics#bm267ad4e1-eb39-433c-9c8e-0190caa17fc9="">*
    > *Recommend
    > <https: community.broadcom.com:443/discussion/automating-elib-tuning-dataset-hardcoding-versus-symbolics?messagekey="267ad4e1-eb39-433c-9c8e-0190caa17fc9&cmd=rate&cmdarg=add#bm267ad4e1-eb39-433c-9c8e-0190caa17fc9">*
    > *Forward
    > <https: community.broadcom.com/communities/all-discussions/forwardmessages?messagekey="267ad4e1-eb39-433c-9c8e-0190caa17fc9&ListKey=6c02d13b-c28e-4794-b86a-c8b767e00498">*
    > *Flag as Inappropriate
    > <https: community.broadcom.com/discussion/automating-elib-tuning-dataset-hardcoding-versus-symbolics?markappropriate="267ad4e1-eb39-433c-9c8e-0190caa17fc9#bm267ad4e1-eb39-433c-9c8e-0190caa17fc9">*
    >
    > -------------------------------------------
    > Original Message:
    > Sent: Jul 18, 2024 12:04 PM
    > From: John Scott
    > Subject: Automating ELIB tuning - dataset hardcoding versus symbolics
    >
    > I could not sleep last night so was reading article 9558 [Tips and
    > Techniques for Managing Endevor ELIBs (broadcom.com)](
    > knowledge.broadcom.com/external/article/9558/...
    > <https: knowledge.broadcom.com/external/article/9558/tips-and-techniques-for-managing-endevor.html)="">
    >
    > This covers running ELIB ANALYZE to capture some key fields and comparing
    > against other fields and thresholds to determine action required and what
    > that action is.
    >
    > I thought I could write a program to run through the ELIBs and find
    > conditions that need actions.
    >
    > Probably this has been done before ?
    >
    > I start by listing the datasets to be analysed. I can do this as I know
    > the naming convention used at my site for Endevor datasets and suffixed
    > .BASE or .DELTA
    >
    > Now some of these might not actually be in use by Endevor and also it
    > would be good to identify the library names without needing to know the
    > site naming convention.
    >
    > Previously I have not paid much attention to the DATASET option on the
    > Environment panel but it looks like it lists the datasets and whether ELIB.
    >
    > It also seems to provide another interface to update type definitions.
    >
    > Using CSV report I can list the actual dataset names but some are defined
    > using symbolics as part of the DSN e.g. &C1EN..&C1ST instead of PROD.STAGE2
    >
    > I could make the program reading the CSV to get the list of ELIBs resolve
    > these but being lazy I thought I could just use the DATASET panel to change
    > the symbolics to hard coding for the environment and stage I am updating.
    >
    > What could possibly go wrong ?
    >
    >
    >
    >
    > You are subscribed to "Endevor" as dave.harding@broadcom.com. To change
    > your subscriptions, go to My Subscriptions
    > <http: community.broadcom.com/preferences?section="Subscriptions">. To
    > unsubscribe from this community discussion, go to Unsubscribe
    > <http: community.broadcom.com/higherlogic/egroups/unsubscribe.aspx?userkey="f0102c8e-2c1c-47ba-9f18-e9e6816f2ae3&sKey=KeyRemoved&GroupKey=6c02d13b-c28e-4794-b86a-c8b767e00498">.
    >
    >
    > Copyright © 2005-2023 Broadcom. All Rights Reserved. The term "Broadcom"
    > refers to Broadcom Inc. and/or its subsidiaries.
    >
    > Hosted by Higher Logic, LLC on the behalf of Broadcom - Privacy Policy
    > <https: www.broadcom.com/company/legal/privacy-policy=""> | Cookie Policy
    > <https: www.higherlogic.com/legal/privacy=""> | Supply Chain Transparency
    > <https: www.broadcom.com/company/citizenship/governance-and-ethics#supply="">
    > | Terms of Use <http: termsandconditions="">
    >

    --
    This electronic communication and the information and any files transmitted
    with it, or attached to it, are confidential and are intended solely for
    the use of the individual or entity to whom it is addressed and may contain
    information that is confidential, legally privileged, protected by privacy
    laws, or otherwise restricted from disclosure to anyone else. If you are
    not the intended recipient or the person responsible for delivering the
    e-mail to the intended recipient, you are hereby notified that any use,
    copying, distributing, dissemination, forwarding, printing, or copying of
    this e-mail is strictly prohibited. If you received this e-mail in error,
    please return the e-mail to the sender, delete it from your computer, and
    destroy any printed copy of it.




  • 5.  RE: Automating ELIB tuning - dataset hardcoding versus symbolics

    Posted Jul 22, 2024 06:33 AM

    VSAM better multivolume and BDAM ELIB more efficient on single volume ? Not sure has BDAM ELIB been performance tested against PSDE ? 




  • 6.  RE: Automating ELIB tuning - dataset hardcoding versus symbolics

    Posted Jul 19, 2024 11:20 AM
      |   view attached

    Hi John,

    I actually just set this up.  My listlibs and Deltas follow the same naming convention, so I paired up with my ACR admin (automated balancing tool - originally unitech, then Infogix, now Precisely) to do the math for me and generate varius return codes.

    I copied a clist/rexx from a google forum that does ispf 3.4 in batch 

    pass it a list of dataset names 

    run listcat and elib inquire against each dsn in the resultant list and pass the sysout  to ACR

    ACR pulls in the various fields from each report, does the math and spits out a nice little report which I import into Excel for analysis

    You could probably due the ACR part in a second rexx.

    CALL ISPF 3.4 LMLIST IN BATCH  BUILD LIST OF DSNS TO PASS TO     
    IDCAMS LISTCAT AND ENDEVOR ELIB INQUIRE                          
                                                                     
     LMDLIST PORTION COPIED FROM GOOGLE - ASSORTED IBM USER FORUMS   
     ESSENTIALLY PERFORMS ISPF 3.4 IN BATCH. STRIPS OUT ENDEVOR ELIB 
     FORMATTED LISTLIBS AND DELTA LIBS THEN PROCESSES RESULTANT LIST 
     THROUGH IDCAMS LISTCAST AND ENDEVOR BC1PNLST INQUIRE COMMANDS   
                                                                     
    INPUTS:  INPUT -- NAME MASK  (EX. V*.END.**.DATA;%%V*.END.**.DATA
       NOTE: FOR WHATEVER REASON THE INPUT MASKS MUST BE IN          
             PRE-SORTED ALPHANUMERIC ORDER, IF NOT RESULTS WILL BE   
             INCOMPLETE/SPORADIC                                     
             '-' IN COL1 = COMMENT DO NOT PROCESS                                                                            
    OUTPUTS: OUTDD -- FB 133 FILE CONTAINING IDCAMS AND PNLST SYSOUT 
              RESULTS FOR EACH VSAM FILE, DISP=MOD                                                                                
              SYSPRINT -- BC1PNLST REPORT,OVERWRITTEN FOR EACH FILE  
     

    b/c my listlibs and deltas have a different number of nodes in production I'm doing 2 passes: 1 for LIST*.DATA and one for *DELTA.DATA                                                                 

    I've attached my sample output:

    ACR/DETAIL COND CODES

    2000 VSAM EXTEND-NUMBER IS NOT EQUAL TO ONE

      2005 ELIB EXTENTS NOT = 0

      2010 PRI CYLS NE PRI PAGES

      2015 DIRECTORY OVERFLOW IS GREATER THAN ZERO

     2020 LAST UPDATE STAMP IS GREATER THAN 15 MILLION

     2025 % USED (I015/I010) IS GREATER THAN 95% USED



    ------------------------------
    Karen

    ------------------------------

    Attachment(s)



  • 7.  RE: Automating ELIB tuning - dataset hardcoding versus symbolics

    Posted Jul 19, 2024 12:30 PM

    We have a similar set of jobs to report on ELIB issues. It would be great if Broadcom could supply a health check utility, everyone would benefit.




  • 8.  RE: Automating ELIB tuning - dataset hardcoding versus symbolics

    Broadcom Employee
    Posted Jul 19, 2024 12:36 PM

    see also https://github.com/BroadcomMFD/broadcom-product-scripts/tree/main/endevor/ELIB-Update-Stamp-Reporting




  • 9.  RE: Automating ELIB tuning - dataset hardcoding versus symbolics

    Posted Jul 22, 2024 06:17 AM

    Sounds very similar approach

    I run rexx to listc level(hlq) to get the list of Endevor datasets based on me knowing the high level qualifier.

    If the entry is a CLUSTER and ends with BASE or DELTA then the rexx issues ELIB B1PNLIB INQUIRE utility

    The rexx gets the pertinent values from the output as mentioned in Tips and Techniques for Managing Endevor ELIBs (broadcom.com)

    With these values I can then check any condition from the Tips that should be reported: dirpages > dirtarget       overflows > 0     updates > threshold etc




  • 10.  RE: Automating ELIB tuning - dataset hardcoding versus symbolics

    Posted Jul 22, 2024 06:20 AM

    I don't think we have ACR but the rexx can get the dataset allocation and elib analyse info and apply logic from the ELIB tips technote 

    A few people seem to have done similar things