I think the shared cache loader && passivation configuration should never be allowed by Infinispan, not just the directory. It doesn't make sense, as one owner deciding to activate an entry will effectively remove the entry from the other owners. And that's regardless of whether fetchInMemoryState/fetchPersistentState are enabled or not.

The fetchPersistentState setting is also ignored with a shared cache store. So I think these configs should be ok:
1. shared cache loader without passivation, regardless of fetchInMemoryState and fetchPersistentState
2. local cache store without passivation, with fetchPersistentState, regardless of fetchInMemoryState
3. local cache store with passivation, with fetchPersistentState && fetchInMemoryState