IBM Support

PM15749: MCH0602 with 'Boundary alignment of pointer or template not vali d.' on iseries

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • The cobol generated for iSeries from following program causes an
    abend:
    
    program PEROA type textUIProgram{includeReferencedFunctions = ye
    s, allowUnqualifiedItemReferences = yes, localSQLScope = yes, th
    rowNrfEofExceptions = yes, handleHardIOErrors = no, V60Exception
    Compatibility = yes, TextLiteralDefaultIsString = no}
    
        TXPAR01 TXPAR01; // record
    
        ctr int;
    
        function main()
    
            ctr = 0;
    
            while(ctr ? 1000)
    
                ctr = ctr + 1;
    
                TXPAR01.PTACCT = '00001';
                try
                    get TXPAR01;
                end
    
            end
            writestdout('No error ' + ctr);
    
        end
    end
    
    record TXPAR01 type indexedRecord{fileName = 'PEROTEST', keyItem
     = PTACCT, TextLiteralDefaultIsString = no}
        3 PTKEY char(9);
            4 PTTAXYR char(4);
            4 PTACCT char(5);
        3 * char(1991);
    end // end TXPAR01
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    The problem was that the EGL program had a large loop, that
    had a try block doing a file I/O call within it. There was
    no string or dynamic array usage within the loop. The way
    the user coded this, caused a very large number of file I/O
    exceptions to get invoked. Each of these exceptions caused
    new strings to get created. Because of the nature of the
    code, no heap releases (garbage collections) were done,
    eventually causing the heap memory to fill. The onexception
    logic, generated by cobolGen, checked to see if the heap
    counter had increased, and if so caused a heap release to
    occur. This counter had not changed because of the lack of
    user variable string assignments. This check was done for
    performance reasons only. The fix is to remove the IF
    statement in the onexception code, and always do the heap
    release.
    

Problem conclusion

  • Software updated. Fixtest available.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM15749

  • Reported component name

    RBD EGL FOR COB

  • Reported component ID

    5724S5001

  • Reported release

    710

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2010-06-02

  • Closed date

    2011-08-10

  • Last modified date

    2011-08-10

  • 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

    RBD EGL FOR COB

  • Fixed component ID

    5724S5001

Applicable component levels

  • R710 PSN

       UP

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSMQ79","label":"Rational Business Developer"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.1","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Document Information

Modified date:
10 August 2011