A memory leak occurs while loading large production timetable data into IBM Intelligent Transit Analytics when you use the vap_loaddata.sh data load utility script. Although the data loader is an offline utility, which terminates after the data is loaded, the leak might prevent larger production timetable data files from loading successfully.
When you run the vap_loaddata.sh script to load the production timetable files, an Out Of Memory error can occur as a result of the memory leak, and the process terminates abnormally.
The issue can occur with production timetable XML files that are larger than 100 MB.
An issue in the code that stores the production timetable to the database causes excessive memory growth. When you load smaller production timetable files, the problem has no visible side-effect, but for larger production timetable files the leak can result in the process terminating abnormally with Out Of Memory errors.
Resolving the problem
This problem is fixed in IBM Intelligent Transit Analytics V1.5 interim fix PO01086.
If you still experience this issue after you install interim fix PO01086, extra configuration changes might also be required to ensure that there is sufficient Java heap available to process the production timetable files.
It is possible even with this fix in place that the Java heap is exhausted by loading excessively large production timetable files, resulting in the failure to load and store the data. To work around this issue, increase the memory limits on the Java process that is used by the data load utility by completing the following steps:
1 - Complete the installation of IBM Intelligent Transit Analytics V1.5 interim fix PO01086.
2 - Edit the vap_loaddata.sh script file.
3 - Search for the line that starts the Java process, which begins with the following string:
4 - On this line, search for the -Xmx parameter. The value that immediately follows -Xmx represents the maximum heap size. For example, the value -Xmx4096m indicates that the maximum heap size is set to 4096 MB (or 4 GB).
5 - Increase the Java heap size as needed to ensure that the large production timetable data files are loaded successfully. Increase the setting in multiples of whole giga-byte values, for example -Xmx6144m or -Xmx8192m.
6 - When the production timetable data files are loaded, to optimize performance, you can optionally reset the -Xmx value back to the original setting.
For more information about installing the data load utility fix and configuring the required memory settings, see the readme file for IBM Intelligent Transit Analytics V1.5 interim fix PO01086 at:
|Smarter Cities||IBM Intelligent Transportation||IBM Intelligent Operations for Transportation||Linux Red Hat - xSeries||1.5.0||All Editions|