[JBoss JIRA] (ISPN-10335) Use stub for PersistenceManager when no stores are configured
by Dan Berindei (Jira)
[ https://issues.jboss.org/browse/ISPN-10335?page=com.atlassian.jira.plugin... ]
Dan Berindei updated ISPN-10335:
--------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
> Use stub for PersistenceManager when no stores are configured
> -------------------------------------------------------------
>
> Key: ISPN-10335
> URL: https://issues.jboss.org/browse/ISPN-10335
> Project: Infinispan
> Issue Type: Sub-task
> Components: Core
> Reporter: Will Burns
> Assignee: Will Burns
> Priority: Major
> Fix For: 10.0.0.Beta4
>
>
> Today even when no stores are configured we always use the PersistenceMangerImpl as a component. The interceptors that call it are never configured, however other key parts of the system such as state transfer still call into it. Currently PersistenceManagerImpl uses another thread for some operations until the new async store SPI can be introduced. By using a stub we won't have to worry about using another thread for such calls and the JVM should have less work to do in general.
> Not to mention this should make the test suite run a bit better for tests that don't use a store.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 9 months
[JBoss JIRA] (ISPN-9816) Handle non segmented container/store for publisher more efficiently
by Dan Berindei (Jira)
[ https://issues.jboss.org/browse/ISPN-9816?page=com.atlassian.jira.plugin.... ]
Dan Berindei updated ISPN-9816:
-------------------------------
Status: Resolved (was: Pull Request Sent)
Fix Version/s: 10.0.0.Beta4
Resolution: Done
> 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.Beta4, 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.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 9 months
[JBoss JIRA] (ISPN-9816) Handle non segmented container/store for publisher more efficiently
by Dan Berindei (Jira)
[ https://issues.jboss.org/browse/ISPN-9816?page=com.atlassian.jira.plugin.... ]
Dan Berindei updated ISPN-9816:
-------------------------------
Status: Pull Request Sent (was: Open)
Git Pull Request: https://github.com/infinispan/infinispan/pull/7038
> 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.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 9 months
[JBoss JIRA] (ISPN-9816) Handle non segmented container/store for publisher more efficiently
by Dan Berindei (Jira)
[ https://issues.jboss.org/browse/ISPN-9816?page=com.atlassian.jira.plugin.... ]
Dan Berindei updated ISPN-9816:
-------------------------------
Status: Open (was: New)
> 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.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 9 months
[JBoss JIRA] (ISPN-10338) JDBC Purge consistency issues
by Ryan Emerson (Jira)
Ryan Emerson created ISPN-10338:
-----------------------------------
Summary: JDBC Purge consistency issues
Key: ISPN-10338
URL: https://issues.jboss.org/browse/ISPN-10338
Project: Infinispan
Issue Type: Bug
Components: Loaders and Stores
Affects Versions: 10.0.0.Beta3, 9.4.15.Final
Reporter: Ryan Emerson
Assignee: Ryan Emerson
The JdbcStringBasedStore's purge method requires the following enhancements:
# The connection should be enrolled in a transaction via {{autoCommit(false)}} with commit/rollback.
# Implementations of {{TableManager#getSelectOnlyExpiredRowsSql}} should utilise a SELECT ... FOR UPDATE statement to ensure that the expired entries are locked throughout the Tx
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 9 months
[JBoss JIRA] (ISPN-10337) JDBC Purge consistency issues
by Ryan Emerson (Jira)
[ https://issues.jboss.org/browse/ISPN-10337?page=com.atlassian.jira.plugin... ]
Ryan Emerson updated ISPN-10337:
--------------------------------
Status: Open (was: New)
> JDBC Purge consistency issues
> -----------------------------
>
> Key: ISPN-10337
> URL: https://issues.jboss.org/browse/ISPN-10337
> Project: Infinispan
> Issue Type: Bug
> Components: Loaders and Stores
> Affects Versions: 10.0.0.Beta3, 9.4.15.Final
> Reporter: Ryan Emerson
> Assignee: Ryan Emerson
> Priority: Major
>
> The JdbcStringBasedStore's purge method requires the following enhancements:
> # The connection should be enrolled in a transaction via {{autoCommit(false)}} with commit/rollback.
> # Implementations of {{TableManager#getSelectOnlyExpiredRowsSql}} should utilise a SELECT ... FOR UPDATE statement to ensure that the expired entries are locked throughout the Tx
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 9 months
[JBoss JIRA] (ISPN-10337) JDBC Purge consistency issues
by Ryan Emerson (Jira)
[ https://issues.jboss.org/browse/ISPN-10337?page=com.atlassian.jira.plugin... ]
Ryan Emerson updated ISPN-10337:
--------------------------------
Affects Version/s: 9.4.15.Final
> JDBC Purge consistency issues
> -----------------------------
>
> Key: ISPN-10337
> URL: https://issues.jboss.org/browse/ISPN-10337
> Project: Infinispan
> Issue Type: Bug
> Components: Loaders and Stores
> Affects Versions: 10.0.0.Beta3, 9.4.15.Final
> Reporter: Ryan Emerson
> Assignee: Ryan Emerson
> Priority: Major
>
> The JdbcStringBasedStore's purge method requires the following enhancements:
> # The connection should be enrolled in a transaction via {{autoCommit(false)}} with commit/rollback.
> # Implementations of {{TableManager#getSelectOnlyExpiredRowsSql}} should utilise a SELECT ... FOR UPDATE statement to ensure that the expired entries are locked throughout the Tx
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 9 months
[JBoss JIRA] (ISPN-10337) JDBC Purge consistency issues
by Ryan Emerson (Jira)
Ryan Emerson created ISPN-10337:
-----------------------------------
Summary: JDBC Purge consistency issues
Key: ISPN-10337
URL: https://issues.jboss.org/browse/ISPN-10337
Project: Infinispan
Issue Type: Bug
Components: Loaders and Stores
Affects Versions: 10.0.0.Beta3
Reporter: Ryan Emerson
Assignee: Ryan Emerson
The JdbcStringBasedStore's purge method requires the following enhancements:
# The connection should be enrolled in a transaction via {{autoCommit(false)}} with commit/rollback.
# Implementations of {{TableManager#getSelectOnlyExpiredRowsSql}} should utilise a SELECT ... FOR UPDATE statement to ensure that the expired entries are locked throughout the Tx
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 9 months