(Hardy, sorry for the double post, forgot the list) On Mon, Aug 5, 2013 at 3:20 PM, Hardy Ferentschik <ha...@hibernate.org> wrote: > TBH i am not completely sure I understand what the method does. The docs says: > > "From the set of classes a new set is built containing all indexed > subclasses, but removing then all subtypes of > indexed entities." > > Not sure what exactly that means. What are you using this method for? Maybe > you could > provide a use case.
Well, we use it for our mass indexing magic button to index one class at a time. Otherwise the mass indexer requires too many db connections when we have too many entities: there are a couple of forum posts and JIRA issues about this problem. The purpose of the "rootification" done in the mass indexer is that if you have: Vehicle > Car > Truck Animal > Cat > Dog the toRootEntities only returns Vehicle and Animal so that you can send them to the mass indexer machinery. Otherwise, you will reindex Car, Truck, Cat and Dog 2 times (one time when you deal with the parent class and one time when you deal with the child one). > Do you have any suggestion on how to add this into the the current API? Do > you want to > have something like isRoot on IndexedTypeDescriptor (thought I am not quite > sure yet what > "root" means in this case. isRoot more or less means isRootInIndexedClassHierarchy. I thought of adding a getRootIndexedTypes() as the mass indexer code is well tested and based on this principle but I agree it's probably nicer to put it in IndexedTypeDescriptor. One way or another, it would be nice to be able to do that without ugly hacks. -- Guillaume _______________________________________________ hibernate-dev mailing list hibernate-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/hibernate-dev