Fast Object Database for Java - with JPA/JDO support

Doctor fails to run when running in parallel on more DB files.

#1

We've got this exception, when running DB Doctor in parallel on multiple DB files.


com.objectdb.o.UserException: Attempt to open a non existing file './tmp.E3Mwf13d7o/objectdb_7666012114926572695/DoctorSection_0.fls'
    at com.objectdb.o.MSG.a(MSG.java:64)
    at com.objectdb.o.LFL.x(LFL.java:809)
    at com.objectdb.o.TFM$a.x(TFM.java:255)
    at com.objectdb.o.LFL.x(LFL.java:779)
    at com.objectdb.o.LFL.y(LFL.java:767)
    at com.objectdb.o.VLV$a.<init>(VLV.java:423)
    at com.objectdb.o.VLV.g(VLV.java:345)
    at com.objectdb.o.VLV.h(VLV.java:321)
    at com.objectdb.o.VLV.e(VLV.java:289)
    at com.objectdb.o.SCV.b(SCV.java:94)
    at com.objectdb.o.DCM.q(DCM.java:544)
    at com.objectdb.o.DCM.p(DCM.java:285)
    at com.objectdb.o.DCM.j(DCM.java:183)
    at com.objectdb.Doctor.main(Doctor.java:22)

Example command:
tmpdir=$(mktemp -dp .)
java -Xmx100G -Djava.io.tmpdir=$tmpdir -cp objectdb.jar com.objectdb.Doctor file1.odb fixed/file1.odb&\
java -Xmx100G -Djava.io.tmpdir=$tmpdir -cp objectdb.jar com.objectdb.Doctor file2.odb fixed/file2.odb&\
java -Xmx100G -Djava.io.tmpdir=$tmpdir -cp objectdb.jar com.objectdb.Doctor file3.odb fixed/file3.odb&\
java -Xmx100G -Djava.io.tmpdir=$tmpdir -cp objectdb.jar com.objectdb.Doctor file4.odb fixed/file4.odb&\

For us the solution seems to use different tmp directory for each file, but it still this looks like a bug to me.

#2

Thank you for your report.

Please see this forum thread, and particularly the suggestion in #2, which you may find helpful.

ObjectDB Support
ObjectDB - Fast Object Database for Java (JPA/JDO)

Post Reply