[JBoss JIRA] (ISPN-3891) Tune for batching without transactions
by Sanne Grinovero (JIRA)
[ https://issues.jboss.org/browse/ISPN-3891?page=com.atlassian.jira.plugin.... ]
Sanne Grinovero updated ISPN-3891:
----------------------------------
Assignee: Dan Berindei (was: Mircea Markus)
> Tune for batching without transactions
> --------------------------------------
>
> Key: ISPN-3891
> URL: https://issues.jboss.org/browse/ISPN-3891
> Project: Infinispan
> Issue Type: Enhancement
> Components: Transactions
> Reporter: Sanne Grinovero
> Assignee: Dan Berindei
> Fix For: 7.0.0.CR2, 7.0.0.Final
>
>
> The usage of batching is a critically important feature, widely used to improve performance in many common scenarios, but while documentation makes it clear that it's built on transactions, it's unclear how these transactions should be configured.
> Also, I would challenge the decision of building batching on top of transactions and see if there are opportunities for further optimization.
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
11 years, 6 months
[JBoss JIRA] (ISPN-3891) Tune for batching without transactions
by Sanne Grinovero (JIRA)
[ https://issues.jboss.org/browse/ISPN-3891?page=com.atlassian.jira.plugin.... ]
Sanne Grinovero updated ISPN-3891:
----------------------------------
Fix Version/s: 7.1.0.Final
(was: 7.0.0.Final)
(was: 7.0.0.CR2)
> Tune for batching without transactions
> --------------------------------------
>
> Key: ISPN-3891
> URL: https://issues.jboss.org/browse/ISPN-3891
> Project: Infinispan
> Issue Type: Enhancement
> Components: Transactions
> Reporter: Sanne Grinovero
> Assignee: Dan Berindei
> Fix For: 7.1.0.Final
>
>
> The usage of batching is a critically important feature, widely used to improve performance in many common scenarios, but while documentation makes it clear that it's built on transactions, it's unclear how these transactions should be configured.
> Also, I would challenge the decision of building batching on top of transactions and see if there are opportunities for further optimization.
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
11 years, 6 months
[JBoss JIRA] (ISPN-4810) Local Transactional Cache looses data when eviction is enabled and there are multiple readers and one writer
by Horia Chiorean (JIRA)
[ https://issues.jboss.org/browse/ISPN-4810?page=com.atlassian.jira.plugin.... ]
Horia Chiorean updated ISPN-4810:
---------------------------------
Attachment: ispn_concurrent.zip
Attached test project.
> Local Transactional Cache looses data when eviction is enabled and there are multiple readers and one writer
> ------------------------------------------------------------------------------------------------------------
>
> Key: ISPN-4810
> URL: https://issues.jboss.org/browse/ISPN-4810
> Project: Infinispan
> Issue Type: Bug
> Affects Versions: 6.0.2.Final
> Environment: Windows 7 x64 (NTFS)
> Oracle JDK1.7.0_40
> Apache Maven 3.0.5
> Reporter: Horia Chiorean
> Assignee: Mircea Markus
> Attachments: ispn_concurrent.zip
>
>
> Using Infinispan 6.0.2 and a local, transactional cache backed by a <singleFile> store, with eviction enabled and a small {{max-entries}} setting, we have the following scenario:
> * the main thread (i.e. the "writer") starts a transaction, adds a batch of strings into the cache and also appends the same strings into a List cache entry and then commits the transaction
> * after the above has finished (i.e. after tx.commit) it fires a number of reader threads where each reader thread
> ** checks that the string entries were added into the cache and
> ** checks that the entries were correctly appended to the List entry
> * the above steps are repeated a number of times
> On any given run, based on timing, we're seeing that at some point (after some time) some of the reader threads will not see the latest version of the List entry (i.e. will not see the latest elements that were added into the list) but rather an old, stale List (sort of a "lost update" scenario).
> If we either:
> * disable eviction or
> * set the {{max-entries}} to a large enough value (which I suspect has the same effect - not evicting anything) the problem doesn't show up.
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
11 years, 6 months
[JBoss JIRA] (ISPN-4810) Local Transactional Cache looses data when eviction is enabled and there are multiple readers and one writer
by Horia Chiorean (JIRA)
Horia Chiorean created ISPN-4810:
------------------------------------
Summary: Local Transactional Cache looses data when eviction is enabled and there are multiple readers and one writer
Key: ISPN-4810
URL: https://issues.jboss.org/browse/ISPN-4810
Project: Infinispan
Issue Type: Bug
Affects Versions: 6.0.2.Final
Environment: Windows 7 x64 (NTFS)
Oracle JDK1.7.0_40
Apache Maven 3.0.5
Reporter: Horia Chiorean
Assignee: Mircea Markus
Attachments: ispn_concurrent.zip
Using Infinispan 6.0.2 and a local, transactional cache backed by a <singleFile> store, with eviction enabled and a small {{max-entries}} setting, we have the following scenario:
* the main thread (i.e. the "writer") starts a transaction, adds a batch of strings into the cache and also appends the same strings into a List cache entry and then commits the transaction
* after the above has finished (i.e. after tx.commit) it fires a number of reader threads where each reader thread
** checks that the string entries were added into the cache and
** checks that the entries were correctly appended to the List entry
* the above steps are repeated a number of times
On any given run, based on timing, we're seeing that at some point (after some time) some of the reader threads will not see the latest version of the List entry (i.e. will not see the latest elements that were added into the list) but rather an old, stale List (sort of a "lost update" scenario).
If we either:
* disable eviction or
* set the {{max-entries}} to a large enough value (which I suspect has the same effect - not evicting anything) the problem doesn't show up.
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
11 years, 6 months
[JBoss JIRA] (ISPN-3831) UnmodifiableList and UnmodifiableCollection are missing optimal Externalizers
by Sanne Grinovero (JIRA)
[ https://issues.jboss.org/browse/ISPN-3831?page=com.atlassian.jira.plugin.... ]
Sanne Grinovero commented on ISPN-3831:
---------------------------------------
The Lucene Directory isn't marshalling these anymore so this is no longer a priority.
> UnmodifiableList and UnmodifiableCollection are missing optimal Externalizers
> -----------------------------------------------------------------------------
>
> Key: ISPN-3831
> URL: https://issues.jboss.org/browse/ISPN-3831
> Project: Infinispan
> Issue Type: Enhancement
> Components: Marshalling
> Reporter: Sanne Grinovero
> Assignee: Mircea Markus
> Labels: 620
> Fix For: 7.0.0.CR2
>
>
> These types are widely used in Infinispan and are using a slow path for Serialization:
> - class java.util.Collections$UnmodifiableList
> - class java.util.Collections$UnmodifiableCollection
> This degenerates in slow UTF8 decoding and significant garbage being created.
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
11 years, 6 months