cancel
Showing results for 
Search instead for 
Did you mean: 

Out of Memory and Query Row Count

Former Member
0 Kudos

I can create an out of memory issue by loading a web page that contains applet(s). It appears that some limit is breached within the java runtime.

Error is: <u><b>java.lang.Exception: java.lang.OutOfMemoryError</b></u>

Example: I have a page with 3 applets, all run the same parameterised query (of type xacute, which calls a query of type sql). If I set the RowCount value (in Query) to, say, 100000, I get out of memory errors. If I reduce the RowCount value to 1000, no problems. It makes no difference if I synchronise the applet loads.

Is it true that the RowCount value, as set in an xMII query of type SQL, is used by SQL unless overwritten by SQL (eg: stored proc --> Set RowCount 1000000)? If so, it must then follow that setting the RowCount value in an xMII query has further implications than one thinks, as the background data collection process is affected by its value (unless overwritten, as above), especially when dealing with large record sets, and stored procs that manage large record set extractions in SQL.

So, if I have a query of type xacute, that calls a query of type sql, that calls a sql stored proc, what is the order of priority for Row Count?

Rather than blindly increasing the available memory for java runtime at the client, is there some quantification process that should be undertaken to alleviate such client side errors caused by applet loadings? Is it a simple case of multiplying the row count by expected record size, plus some overhead for each applet? Can this applet overhead be quantified? Obviously there may also be a dependecy on applets per page, # pages open, browser settings, cache flushing etc.

Also, is it true that when loaded, the applet will consume memory resources, as governed by a parameter such as Query Template Row Count.......even though that amount of data may never reach the client?

Kevin.

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

when a xacute query calls a SQL Query . In this situation the final output row is less or equal to the minimum rowcount of two query.

Former Member
0 Kudos

Kevin:

Many of the applets, due to the streaming model for data communications with the xMII back-end, have to "preallocate" room for receiving the data, since allocating each "piece" of data individually would lead to horrific performance and memory fragmentation. The only available "hint" that they can use for allocating data structures is the row count.

- Rick