AcuXDBC: internal ZEXMAIN error: sort buffer overflow
AcuXDBC may return the following error when queries are attempting to sort a large number of records:
"internal ZEXMAIN error : sort buffer overflow".
AcuXDBC provides a range of administrative options to set wider values, when the defaults are not sufficient.
Using the asql tool (.bat or .sh), execute the following command-line:
SQL (/? for help) ==>SET OPTION SORTPAGES T M
where T = Total number of sort pages (disk + memory) and M = Memory sort pages.
The defaults are 10000 and 1000.
SQL (/? for help) ==>SET OPTION SORTPAGES 500000 200000;
This setting is temporary and should be run everytime the asql tool is started.
To have a permanent setting, store the SET OPTION lines in a configuration file, such as acuxdbcOptions.cfg
Then set a new environment variable GENESIS_INITSQL to let AcuXDBC finding this file.
Edit a file called c:\etc\acuxdbcOptions.cfg
Add the lines to this file using the following syntax, without the ";" at the end of each line:
SET OPTION SORTPAGES 500000 200000
SET OPTION MERGESIZE 10000
Then, set the environment variable to point to this cfg file, by using a commandline:
or by using the Windows "Advanced System Settings - Environment variables"
If the query is run via JDBC using the VORTEX.JAR library, create a file named vortex.properties and place it in the same directory where vortex.jar is.
This file will contain the same lines "SET OPTION" described above.
Support Incident: 3102321