IBM Support

PH45868: REXX EDITOR - POOR PERFORMANCE WHEN PARSING LARGE OR COMPLEX FILES

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • The following rexx exec illustrates the problem -
    
    /* REXX - nested IF statements - slow response from
    Content-Assist */
    IF x=1 THEN DO
       IF x=2 THEN DO
         select
           when x = 0 then do
             if 1=2 then do
               if 1=2 then do
                 if 1=2 then do
                   if 1=2 then do
                     if 1=2 then do
                        if 1=2 then do
                        end
                     end
                   end
                 end
               end
             end
           end
           otherwise do
           end
         end
       END
    END
    
    It doesn't do anything useful, but the syntax is perfectly
    valid, and it runs to completion with RC=0
    
    In the IDz client, open the above rexx using the rexx editor,
    then place the cursor anywhere and press CTRL-SPACEBAR to invoke
    content-assist.  With 7 or 8 levels of nested IF statements,
    response from content-assist takes about 20 to 30 seconds.
    Adding more levels of nesting degrades performance even more.
    Removing some levels of nesting improves performance which
    becomes acceptable at about 4 or 5 levels.
    
    The slow response happens the first time you press CTRL-SPACEBAR
    after opening the rexx.  It also happens if you type some
    characters into the rexx and press CTRL-SPACEBAR again.
    

Local fix

  • keep nested IFs to no more than 4 or 5 levels
    

Problem summary

  • See error description.
    

Problem conclusion

  • Removed ambiguities from the REXX grammar, allowing the parser
    to efficiently parse files.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH45868

  • Reported component name

    DEV FOR Z/OS

  • Reported component ID

    5724T0700

  • Reported release

    F00

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2022-04-22

  • Closed date

    2022-11-17

  • Last modified date

    2022-11-17

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    DEV FOR Z/OS

  • Fixed component ID

    5724T0700

Applicable component levels

[{"Business Unit":{"code":"BU029","label":"Software"},"Product":{"code":"SSJK49","label":"IBM Developer for z Systems"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"F00"}]

Document Information

Modified date:
17 November 2022