Hi,
While executing the data junction map I am getting the bellow error:
error 4031 (ORA-04031: unable to allocate 4064 bytes of shared memory ("shared pool","SELECT COUNT(1)as COUNT FROM...","sga heap(2,0)","kglsim heap")
I am using the source as ASCII (Fixed) and target as Oracle Multimode. Inside the map to execute the oracle quires I am using the DJImport. I am invoking the data junction map from the .net web service.
The file which I am loading contains nearly 20 lacks records. As it is taking too much time to load this large file using a single map, I am splitting the file using the data junction map into multiple files each having 50 thousand records.
After split of each file I will call a EXE which will call the web service which intern invoke the data junction map to load the splitted file.
The splitting logic and the loading logic have been implemented in a single map. Based on the record count in the file the map will perform either split or load.
By this logic same Map is simultaneously calling nearly 40 times at a time. We are executing this map in two servers by using the load balancers i.e. in each server 20 files are loading (20 times the same map is executing)
I am suspecting that the importing the ORACLE database by using the DJImport is causing the above mentioned error and ORACLE database which I am importing is very huge database. Please suggest me how to solve this issue.
Regards,
Naveen Kumar B