ObjectDB 2.7.2_x Doctor Yields "Index Requires Rebuild" Always

#1

Take a .odb created with ObjectDB 2.7.2 or later OR EARLIER.  Run ObjectDB 2.7.2 Doctor on it.  See indexing errors reported.

Run ObjectDB 2.7.1 on same .odb and you will not see indexing errors.

Run ObjectDB 2.7.2 (or later or earlier) Doctor with repair and create repaired.odb.  repaired.odb will still show indexing errors when ObjectDB 2.7.2 (or later) Doctor is run on the "repaired" database.

Automatic index rebuilding ("<index-update enabled="true" priority="40" />") does not correct the database.

So, in summary, I think ObjectDB 2.7.2 (and later) Doctor is incorrectly stating that indexing errors are present.

(I am running this test with a java.exe that is Java 9, though I don't think that matters since ObjectDB 2.7.1 Doctor does not show any indexing errors.)

Here is an example output from my .odb:

C:\Users\BoydE\Desktop>java -cp 2.7.2_03\bin\objectdb.jar com.objectdb.Doctor C:\Users\BoydE\MoxyDox\ObjectDb\Test.odb
ObjectDB Doctor [version 2.7.2_03]
Copyright (c) 2017, ObjectDB Software. All rights reserved.

Scanning the database file...
2MB (total)
Analyzing database structure...
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%

Index Errors
------------
[1] Index com.unilogical.moxydox.protocol.server.jdo.JdoEntityId[id] requires rebuild.
  - missing entries: 7
  - extra entries: 7
[2] Index com.unilogical.moxydox.protocol.server.jdo.JdoEntity[idLowercase] requires rebuild.
  - missing entries: 16
  - extra entries: 16
[3] Index com.unilogical.moxydox.protocol.server.jdo.JdoImagePageBackground[checksum] requires rebuild.
  - missing entries: 1
  - extra entries: 1
[4] Index com.unilogical.moxydox.protocol.server.jdo.JdoImagePageBackground[location] requires rebuild.
  - missing entries: 1
  - extra entries: 1
#2

You are right. This is a false alarm.

The Doctor in 2.7.2 tries to diagnose index issues that have not been handled by previous versions but introduces this false alarm. Could you please try build 2.7.2_04?

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

ObjectDB 2.7.2_04 works as expected.  (No more false indexing issue reports.)

#4

In case it helps you (because 2.7.2_05 release notes state "Fixed a bug in schema evolution of indexes.") ...

I can confirm that ObjectDB 2.7.2_05 also works as expected.

#5

Thanks for the update.

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

Post Reply

To post a reply and/or subscribe to update notifications - please login