Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
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
Your application is unable to complete mapping load in available memory. It require more memory to complete mapping load.
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..
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.
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.
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.
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.