3rd party application (Edifecs) malfunctions when the guest is ran on one particular Xen host
Environment
- Red Hat Enterprise Linux 5
Issue
- Guest running a 3rd party application (Edifecs), the guest is ran on most of the hosts in their Xen cluster it behaves as expected. When the guest resides on one particular host, the application always terminates incorrectly (though with varying error messages). When the Xen guest is ran on any other host the software does not abnormally terminate and gives correct results. The libraries and Edifecs software reside in a network share and are invoked from various VMs residing in multiple hosts.
Resolution
We never heard back from customer, the analyze pointed 3rd party software issue.
From end of strace:
<snip>
16:04:47.211077 munmap(0x2b3e21cf1000, 4096) = 0 <0.000023>
16:04:47.211519 write(9, "Errors: 01\\0<\\0/\\0b\\0>\\0<\\0/\\0f\\0"..., 8192) = 8192 <0.000058>
16:04:47.212246 write(9, "tionalGroup leve"..., 8192) = 8192 <0.000088>
16:04:47.212531 write(9, "s\\0:\\0 \\0000\\0 \\0<\\0/\\0b\\0>\\0<\\0/\\0f\\0o\\0n\\0t\\0>\\0"..., 136) = 136 <0.000141>
16:04:47.212832 close(9) = 0 <0.000024>
16:04:47.212981 time(NULL) = 1283457887 <0.000020>
16:04:47.213521 time(NULL) = 1283457887 <0.000020>
16:04:47.213792 close(3) = 0 <0.000022>
16:04:47.214078 time(NULL) = 1283457887 <0.000019>
16:04:47.219484 time(NULL) = 1283457887 <0.000024>
16:04:47.221581 exit_group(1) = ?
It seems another error from 3rd party application, making clean the message:
"Errors: 1</b></f tionalGroup leves: 0 </b></font>"
16:04:47.211519 write(9, "Errors: 1</b></f"..., 8192) = 8192 <0.000058>
16:04:47.212246 write(9, "tionalGroup leve"..., 8192) = 8192 <0.000088>
16:04:47.212531 write(9, "s: 0 </b></font>"..., 136) = 136 <0.000141>
This issue happens after a read into the 7.xml, this error message sounds familiar to customer?
16:04:47.209752 access("/apps/edifecs/test/Edifecs/XEngine//config/rc-str/1033/7.xml", F_OK) = 0 <0.000026>
16:04:47.209881 open("/apps/edifecs/test/Edifecs/XEngine//config/rc-str/1033/7.xml", O_RDONLY|O_NONBLOCK|O_DIRECTORY) = -1 ENOTDIR (Not a directory) <0.000027>
16:04:47.210097 open("/apps/edifecs/test/Edifecs/XEngine//config/rc-str/1033/7.xml", O_RDONLY) = 10 <0.000027>
16:04:47.210226 fstat(10, {st_mode=S_IFREG|0755, st_size=2460, ...}) = 0 <0.000019>
16:04:47.210379 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b3e21cf1000 <0.000022>
16:04:47.210476 read(10, "<resource name=\\"GdlCommon\\" lang="..., 49152) = 2460 <0.000022>
16:04:47.210589 read(10, "", 45056) = 0 <0.000020>
16:04:47.210886 read(10, "", 49152) = 0 <0.000021>
16:04:47.210986 close(10) = 0 <0.000020>
16:04:47.211077 munmap(0x2b3e21cf1000, 4096) = 0 <0.000023>
Also, from description the errors are pointing to diferent directories from strace showed, example:
From description:
> The XSDNames module failed: /tmp/Edifecs/XEngine
> /bin/libedi2xmlschema.so
> Guideline load error.
From Strace:
16:04:46.418325 open("/apps/edifecs/test/Edifecs/XEngine/bin/libedi2xmlschema.so", O_RDONLY) = 10 <0.000040>
16:04:46.418510 read(10, "\\177ELF\\2\\1\\1\\0\\0\\0\\0\\0\\0\\0\\0\\0\\3\\0>\\0\\1\\0\\0\\0\\340\\242\\3\\0\\0\\0\\0\\0"..., 832) = 832 <0.000030>
16:04:46.418639 fstat(10, {st_mode=S_IFREG|0755, st_size=1526398, ...}) = 0 <0.000020>
</snip>
Diretories are different
From description:
> The repository /tmp/Edifecs/XEngine/samples/HPHC_P_837_FirstPass.ecs
> could not be loaded - Corrupted data
> Guideline load error.
From strace:
16:04:46.290357 open("/apps/edifecs/test/Edifecs/XEngine/samples/HPHC_P_837_FirstPass.ecs", O_RDONLY) = 9 <0.000032>
16:04:46.290498 lseek(9, 0, SEEK_CUR) = 0 <0.000020>
Root Cause
3rd party software issue.
Diagnostic Steps
The 3rd party application reports:
Can't find path to Java VM executable pointed to by the JAVA_HOME environmnent variable.
The data starting at position 0 is not recognized as a valid data transmission.
Parser error - No matching parser schema was found.
The XSDNames module failed: /tmp/Edifecs/XEngine/bin/libedi2xmlschema.so
Guideline load error.
The repository /tmp/Edifecs/XEngine/samples/HPHC_P_837_FirstPass.ecs could not be loaded - Corrupted data
Guideline load error.
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
