db4o stores meta data about all classes used in the database . Even when the class doesn't exist anymore the meta-data in db4o is still there. The class filter allows you to remove class-meta data from the defragmented database. You can pass you own implementation of a class filter. Or you can use the built in AvailableClassFilter. This filter removes all meta-data of classes which aren't present anymore.
DefragmentConfig config = new DefragmentConfig("database.db4o"); config.storedClassFilter(new AvailableClassFilter()); Defragment.defrag(config);