Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

what is the Solution to fix Allocated Memory Exceeded error in the Server Environment

Hi..

This is Prem , I am a Developer working Qlik View ..i am getting "Allocated Memory Exceeded" in few of my graphs(Both BAR & Pivot table).The Report has large DATA, here is the Expression "Count(distinct if(linesummary<>'O',CarCostNo))" .

I am not getting any error in the development Environment(Enterprise Edition version 8.20.5402.2) but if post the report in the Qlik view server and try open the Graphs its showing Allocated Memory Exceeded error and after i get this error the communication between the Server and Client is lost.

Please help me on this ...

Thanks in Advance..BR Prem

13 Replies
Not applicable
Author

I remember an issue that causes this: the use of calculated dimensions could under some corcumstances cause this behaviour. If you're using these, try to calculate the value already in the loading.

Anonymous
Not applicable
Author

Prem,
The problem can be
- expression
- data model structure
If you create a flag in your data following the same logic as in your expression, you can use sum(Flag), which is faster.
The "flatter" the data model, the better is the calculation perfromance, and less memory is required. Even with the current expression, it is much faster if all the fields you use in the expressions and dimensions of a chart are in the same logical table, ot at least in the neigboring table, not like ten tables away.

Not applicable
Author

i also used your solution for memory problem, and for other objects problem like the cross on the

object that come from no where...

but also i suggest :

dont use count distict

dont use if(... expression in the expression .

union table in the script if u can.

marcel_olmo
Partner Ambassador
Partner Ambassador

Thank you for your advice doqv2,

I've got the same problem, and my solution was to delete the if statements inside the expressions and treat the "if" statement inside the set analysis.

I'll show you with practice examples :

This is my wrong choice Sad :

fabs(sum({$<[Año] = {$(=Only([Año]))}>} if(left(IDCuenta,1)='7', [Asiento Importe])))

This is the best choice Smile :

fabs(sum({$<[Año] = {$(=Only([Año]))}, N_Fila_Cuenta = {"=LEFT(N_Fila_Cuenta,1) = '7' "} >} [Asiento Importe]))

But do the same, but the second one is a way faster, and can solve easily our problems of "allowing memory to the objects".

Cheers!!