This topic lists major causes of possible Dgidx crashes, to help you identify and fix them, or prevent them from occurring.
Dgidx is often the first component to fail, because it is one of the first components that needs to run within the Deployment Template scripts.
For example, you may see the following Dgidx failure:
SEVERE: Batch component 'Dgidx' failed. Refer to component
logs in /usr/local/endeca/[version]
/endeca/project/sample
/control/.././logs/dgidxs/Dgidx on host ITLHost.
Occurred while executing line 32 of valid BeanShell script:
[[
29| Forge.archiveLogDir();
30| Forge.run();
31| Dgidx.archiveLogDir();
32| Dgidx.run();
33|
34| // distributed index, update Dgraphs
35| DistributeIndexAndApply.run();
]]
Use the following steps to investigate Dgidx failures in the Deployment Template:
Verify that the MDEX Engine is also installed on the data processing (ITL) server, because Dgidx is part of the MDEX Engine installation.
Check the
eac.properties
file, which is located under your Platform Servicesworkspace/conf
folder (for example,/endeca/PlatformServices/workspace/conf/eac.properties
). Verify that thecom.endeca.mdexRoot
property is set to the correct location and version of yourMDEX_ROOT
(for example,/usr/local/endeca/MDEX/
), and restart the HTTP service.[version]
Run Dgidx from the command line. This way, you are accessing the Dgidx directly, without the layer of the Deployment Template and EAC configuration.
It is useful to run Dgidx directly for debugging purposes. For example, if you notice that Dgidx fails when running it with the Deployment Template
runcommand
, but runs successfully from the command line, this means that the issue is either with the EAC or the Deployment Template, as opposed to the problems in the data.
In rare cases the Dgidx process may fail due to running out of virtual memory or swap space that it requires to run successfully.
For example, you may see a memory allocation error similar to the following:
FATAL DATE 13:50:40.753 UTC DGIDX {dgidx,baseline}: memory allocation failure ---------------------------------------------------------- Endeca fatal error detected. ----------------------------------------------------------
Use the following tips to troubleshoot memory allocation crashes:
Run another baseline update and use
vmstat
(on UNIX) to closely monitor the Dgidx memory usage and the amount of memory and swap space available on the ITL server. You can save the output ofvmstat
and explore it to identify whether the amount of free and swap memory drops or remains sufficient.On UNIX, use the
top
andprtconf
commands and explore their output.Temporarily shut down some processes running on this server and examine whether the Dgidx process continues to fail consistently.
If the process does not fail, note its peak virtual memory usage while it is running.