]
Will Burns commented on ISPN-9816:
----------------------------------
I will have to investigate further if this change is needed; I have to admit I am
surprised the perf difference isn't bigger between old distributed streams and
distributed publisher when not segmented.
Handle non segmented container/store for publisher more efficiently
-------------------------------------------------------------------
Key: ISPN-9816
URL:
https://issues.jboss.org/browse/ISPN-9816
Project: Infinispan
Issue Type: Sub-task
Components: Publisher
Reporter: Will Burns
Assignee: Will Burns
Priority: Major
Fix For: 10.0.0.Final
The new Publisher is designed to take into account segmented data container and segmented
stores. However if a store/data container is not segmented, the handling can cause
performance issues, although it would still behave better memory and rehash based. The
tradeoff is probably fine for data container, however stores performance drop would be
massive. We need to process all segments in at least the non segmented store case to
retain our old performance.
To clarify this would require changes in the LocalPublisherManagerImpl class when
invoking `CacheCollection.localPublisher(int)`, we would need to instead invoke
`CacheCollection.localPublisher(IntSet)` so that we only have to iterate over the store
once instead of IntSet.size times.