Informix - Problem description
| Problem IT42497 | Status: Closed |
ERROR CODE -528 (MAXIMUM OUTPUT ROWSIZE (32767) EXCEEDED) IS THROWN WHEN SQL IS RETURNING 17 MULTISETS | |
| product: | |
INFORMIX SERVER / 5725A3900 / E10 - | |
| Problem description: | |
Error code -528: Maximum output rowsize (32767) exceeded is
thrown trying to execute an SQL statement having 17 multisets in
columns and not returning more than 32k in each row.
This select fails:
SELECT tabname,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col1,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col2,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col3,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col4,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col5,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col6,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col7,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col8,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col9,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col10,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col11,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col12,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col13,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col14,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col15,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col16,
MULTISET(SELECT colno, colname FROM syscolumns WHERE 1=0)
col17
FROM systables
WHERE tabname="systables"; | |
| Problem Summary: | |
****************************************************************
* USERS AFFECTED: *
* Users of Informix Server prior to 14.10.xC9W1. *
****************************************************************
* PROBLEM DESCRIPTION: *
* See Error Description *
****************************************************************
* RECOMMENDATION: *
* Upgrade to Informix Server 14.10.xC9W1. *
****************************************************************
To solve this in the least risky fashion, we've introduced an
undocumented, tunable onconfig parameter to allow the DBA to
control the collection memory allocation. The default will
remain 20.
onstat -g cfg full ELEMS_PER_COLLECTION_MEM_ALLOC
IBM Informix Dynamic Server Version 14.10.FC10 -- On-Line -- Up
00:06:38 -- 168008 Kbytes
2022-12-08 18:19:36
Configuration Parameter Info
id name type maxlen units rsvd
tunable
278 ELEMS_PER_COLLECTION_MEM_ALLOC INT4 12
*
min/max : 0,20
default : 20
onconfig:
current : 1
This parameter is undocumented.
Description:
Setting ELEMS_PER_COLLECTION_MEM_ALLOC influences an
internal memory
allocation for queries that use collections. The default
value is 20 with
acceptable value ranging from 0 through 20. If your query
encounters a
-528 error, changing this value may resolve the error. | |
| Local Fix: | |
| Solution | |
| Workaround | |
****************************************************************
* USERS AFFECTED: *
* Users of Informix Server prior to 14.10.xC9W1. *
****************************************************************
* PROBLEM DESCRIPTION: *
* See Error Description *
****************************************************************
* RECOMMENDATION: *
* Upgrade to Informix Server 14.10.xC9W1. *
****************************************************************
To solve this in the least risky fashion, we've introduced an
undocumented, tunable onconfig parameter to allow the DBA to
control the collection memory allocation. The default will
remain 20.
onstat -g cfg full ELEMS_PER_COLLECTION_MEM_ALLOC
IBM Informix Dynamic Server Version 14.10.FC10 -- On-Line -- Up
00:06:38 -- 168008 Kbytes
2022-12-08 18:19:36
Configuration Parameter Info
id name type maxlen units rsvd
tunable
278 ELEMS_PER_COLLECTION_MEM_ALLOC INT4 12
*
min/max : 0,20
default : 20
onconfig:
current : 1
This parameter is undocumented.
Description:
Setting ELEMS_PER_COLLECTION_MEM_ALLOC influences an
internal memory
allocation for queries that use collections. The default
value is 20 with
acceptable value ranging from 0 through 20. If your query
encounters a
-528 error, changing this value may resolve the error. | |
| Comment | |
Fixed in Informix Server 14.10.xC9W1. | |
| Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 17.11.2022 17.02.2023 17.02.2023 |
| Problem solved at the following versions (IBM BugInfos) | |
| Problem solved according to the fixlist(s) of the following version(s) | |