Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Out of virtual and/or logical memory when reloading a qlikview document

Hi all,

I've been looking through this forum but I still don't manage to solve my problem.

When reloading a QV document, I get the error "out of virtual and/or logical memory". The thing is, the reload has always worked, but recently I made some changes to the script to reduce the number of tables. I've addes a lot of mapping loads and since then I get this error. The logfiles end whith this part of my script:

Can someone point me in a direction?

thx in advance,

Yves

Concatenate (Orders) Load

*,

ApplyMap('Campagne_map', %Campagne_Key) as Campagne,

ApplyMap('OrderSoort_map', %OrderSoort_Key) as OrderSoort,

ApplyMap('OrderSubSoort_map', %OrderSubsoort_Key) as OrderSubsoort,

ApplyMap('OrderType_map', %OrderType_Key) as OrderType,

ApplyMap('Vertegenwoordiger_hist_map', %Vertegenwoordiger_hist_Key) as Vertegenwoordiger_hist,

ApplyMap('Vertegenwoordiger2_hist_map', %Vertegenwoordiger2_hist_Key) as Vertegenwoordiger2_hist,

ApplyMap('Artikelgroep1_map', %Artikelgroep1_hist_Key) as Artikelgroep1_hist,

ApplyMap('Artikelgroep2_map', %Artikelgroep2_hist_Key) as Artikelgroep2_hist,

ApplyMap('Artikelgroep3_map', %Artikelgroep3_hist_Key) as Artikelgroep3_hist,

ApplyMap('Artikelgroep4_map', %Artikelgroep4_hist_Key) as Artikelgroep4_hist,

ApplyMap('Artikelgroep5_map', %Artikelgroep5_hist_Key) as Artikelgroep5_hist,

ApplyMap('Orderprijscode_map', %KDPRYS_order_key) as Orderprijscode,

ApplyMap('TypeOpgave_map', %TypeOpgave_key) as Levervoorwaarde,

ApplyMap('PrijsType_map', %Prijstype_key) as Prijstype,

ApplyMap('Orderregio_map', %Orderregio_Key) as Orderregio,

ApplyMap('Bijhuis_map', %Bijhuisnr_Key) as Bijhuis,

// ApplyMap('PeriodeFacturatie_map', %KdPerfakt_Key) as PeriodeFacturatie,

// ApplyMap('OrderStatus_map', %StatusCode_Key) as OrderStatus,

ApplyMap('TypeLevering_map', KDTypeLevering) as TypeLevering,

// ApplyMap('Depots_map', %Depot_key) as Depot,

ApplyMap('Vrachtwagen_map', %Vrachtwagen_key) as Vrachtwagen,

// ApplyMap('TypeVerpakking_map', %KDVERPAK_Key) as Verpakking,

ApplyMap('PrijsEenheid_map', PrijsEenheid_c) as PrijsEenheid,

ApplyMap('VoorraadEenheid_map', VoorraadEenheid_c) as VoorraadEenheid,

ApplyMap('OrderEenheid_map', OrderEenheid_c) as OrderEenheid

Resident Levering_temp

Where KDFORF <> 99 and BSSTUKNR <> 99999999 and KDHISTO <> 99

and KDBLOK = 0;

Drop table Levering_temp;

Drop field KDHISTO, KDBLOK,KDTYPE From Orders; // was enkel nodig voor bovenstaande test



6 Replies
suniljain
Master
Master

Your application is unable to complete mapping load in available memory. It require more memory to complete mapping load.

Not applicable
Author

Hi,

You are loading lot of mapping tables and for each record ,its trying to map. Probably ,you can make it running your application by increasing your virtual memory settings. Ideal virtual memory settings should be 1.5 times your physical ram.If its still not working, try to close other applications running in ur machine , run your application again..

boorgura
Specialist
Specialist

Check if you have a lot of synthetic keys formed.

You can debug for a limit load so that you can confirm that you have issue just with the data size and not the design.

Might give some more inputs if you can post the files.

Not applicable
Author

I've already tried the following without result:

- put all the applymaps in comment

- deleted the where conditions

So I think it has to do with the concatenate load. But it is strange because I use concatenate loads several times.

I've also checked for synthethique keys but there are none. I do need to do a drop of several fields after this concatenate load, but in the end result (with a load for only 5000 records for example) there are ny synthethique keys.

Yves.

Not applicable
Author

I have added the file with the entire script. Look for "error" in the tab "uitleveringen". Also mark the end script statement (it's a seperate tab in the script for debug purpose), so no need to look beyond that. Hope this helps.

Yves.

johnw
Champion III
Champion III

I don't think you want to concatenate. I can't imagine why you'd want to repeat all the rows like that, and doubling the number of rows could easily be causing a memory problem. I think you want to left join instead, at least if you're loading the main data from a QVD and have an optimized load. If not loading from a QVD, or if you don't have an optimized load, I think you should set up your mapping tables before your main load, and do the mapping DURING the main load.

Edit: Never mind. I think I'm wrong now that I'm looking at your full script.