Non shared persistent stores bring their own set of issues.
If different nodes on the cluster have their own stores, then when sending a reliable message to a topic which has multiple durable subscriptions, (or queue with replicas), then we need to use our custom 2PC multicast protocol described in an earlier thread, to ensure reliability.
If all nodes are using the same shared store, then life is much easier since we can update the database once and then do a 1PC multicast. This is going to be more performant too.
To make our life easier we could only support shared persistent stores, although I think this is perhaps too much of a limitation since this will prevent us from using file based stores for instance.