IBM Support

IT27613: POSSIBLE ONE BYTE RALLOC MEMORY CORRUPTION WHEN USING MATCHES FILTER AND MULTIBYTE CHARACTER SET AND LAST BYTE OF FILTER

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

  • Assert failed memory block header corruption assertions are
    possible.  They would look something like this:
    
    11:54:30  Found during mt_shm_malloc_segid 9
    11:54:30  Pool '89219792' (0x70000019f5ae040)
    11:54:30  Bad block header 0x70000010bbb3ce0
    blk-64
    070000010bbb3ca0: 00000000 00000000 00070a00 00000000   ........
    ........
    070000010bbb3cb0: 00000002 00000000 00000000 00000000   ........
    ........
    070000010bbb3cc0: 07000001 8d9cd038 07000001 8d9cd340   .......8
    .......@
    070000010bbb3cd0: 00000006 00000003 a9d3ae79 a457bb5c   ........
    ...y.W.\
    blk+64
    070000010bbb3ce0: 00000002 99580c01 ffff0000 00000000   .....X..
    ........
    070000010bbb3cf0: 07000001 8d9cd000 07000001 0bbb38e0   ........
    ......8.
    070000010bbb3d00: 00000000 00000320 07000001 9f5ae7c0   .......
    .....Z..
    070000010bbb3d10: 07000001 beff0d08 0e000003 5e59f4c9   ........
    ....^Y..
    
    The multibyte string is 0xa9d3ae79a457bb5c and the 1 byte of
    corruption is 0x00 and in this case it hits the following blocks
    check word and changes 0x0e to 0x00 and causes the failure.
    
    The query that caused this was as follows:
    
    SELECT * FROM abb_file WHERE abb04 matches "*??y?W?\"
    
    So it's has a matches filter, and the filter itself, the string
    doesn't display properly because it's being displayed single
    byte when the locale was 1 that had multiple byte characters and
    the filter is using multi-byte characters.
    
    The server had DEFAULTESCCHAR set to the default value of \.
    
    In this case the last byte shows is \ and that does end up
    matching DEFAULTESCCHAR which leads to the problem.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * Users of IDS prior to 12.10.xC13.                            *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * Possible one byte ralloc memory corruption when using        *
    * matches filter and multibyte character set and last byte of  *
    * filter matches DEFAULTESCCHAR.                               *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    

Problem conclusion

  • Fixed in IDS 12.10.xC13.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IT27613

  • Reported component name

    INFORMIX SERVER

  • Reported component ID

    5725A3900

  • Reported release

    C10

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2018-12-27

  • Closed date

    2019-10-03

  • Last modified date

    2019-10-03

  • 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

    INFORMIX SERVER

  • Fixed component ID

    5725A3900

Applicable component levels

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSGU8G","label":"Informix Servers"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"C10","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
03 October 2019