I am using dist mode with >1 noOfOwners for availability. Also the cache items are indexed. I indexed them in the ram and seems to work fine. But certainly this cannot work in case of a node failure.

Can you please tell me how to ensure that the index created is replicated to the owning nodes so that in case of failures one would not lose indexes? I tried mode "infinispan" but seems like I am missing some jars. Can you chalk out step by step how to do it and which jars to include?

Also a concern that I have is I want the index to be colocated with the data so that there will be minimal remote reads and the application logic will ensure that operations are carried out on the owning node.

But even with this the following is resulting in a index loss: when the owner of the data goes down the new owner will not have an index.(dist mode) Hence asked for a step by step implementation so that I know what am I doing wrong. So please suggest - already lost a lot of time on this.

The hibernate documentation suggested using the same cache manager using jndi but even without it, the indexing should work.

Also my suggestion is to keep this abstract from the developer in the upcoming release. i.e let the indexing be handled by the framework itself. Because for dist mode if we have local indexes (ram) it would make no sense as the indexes are lost on a node failure.

Also my suggestion is to keep this abstract from the developer in the upcoming release. i.e let the indexing be handled by the framework itself. Because for dist mode if we have local indexes (ram) it would make no sense as the indexes are lost on a node failure.

Yes we're aware that this is currently pretty hard to do, I agree we should make it easier in future.

To resolve your question on the missing jars: we generally assume users are familiar with Maven dependencies; the needed dependencies are those defined in the Hibernate Search project, specifically: