I've been using nightly tarball openmpi-1.9a1r28919 with Java binding and it had a bug in its MINLOC implementation (Minloc.java). Essentially, the following line,
out_array [outdisp + 1] = in_array [outdisp + 1] ;
should be changed to
out_array [outdisp + 1] = in_array [indisp + 1] ;
The same should be done for MAXLOC (Maxloc.java) implementation as well. I tested with the change and both MINLOC and MAXLOC worked as expected afterwards.
However, these files are no longer available in the latest trunk and it seems the API for collective operations have changed as well. Still MINLOC (and MAXLOC) does not work as expected. I've attached a sample code to reproduce the issue and an output from it (for MINLOC).
I am running on 64bit Ubuntu 12.04.
Thank you in advance,