[JBoss JIRA] (ISPN-5378) Add tests for Lucene Directory
by Alan Field (JIRA)
Alan Field created ISPN-5378:
--------------------------------
Summary: Add tests for Lucene Directory
Key: ISPN-5378
URL: https://issues.jboss.org/browse/ISPN-5378
Project: Infinispan
Issue Type: Task
Components: Lucene Directory
Reporter: Alan Field
Assignee: Alan Field
Fix For: 7.2.0.Final
Add tests that use the native Lucene API and deleting and adding the index
--
This message was sent by Atlassian JIRA
(v6.3.11#6341)
10 years, 11 months
[JBoss JIRA] (ISPN-5370) Make clear() non-transactional and lock free
by Pedro Ruivo (JIRA)
[ https://issues.jboss.org/browse/ISPN-5370?page=com.atlassian.jira.plugin.... ]
Pedro Ruivo updated ISPN-5370:
------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
Pull Request already integrated.
> Make clear() non-transactional and lock free
> --------------------------------------------
>
> Key: ISPN-5370
> URL: https://issues.jboss.org/browse/ISPN-5370
> Project: Infinispan
> Issue Type: Enhancement
> Components: Core
> Reporter: Pedro Ruivo
> Assignee: Pedro Ruivo
> Fix For: 7.2.0.CR1, 7.2.0.Final
>
>
> New semantic for clear:
> * assumes no concurrent operation while the command is in progress
> * Lock free (avoids any issues with stop-the-word or deadlocks)
> * non-transactional (it does not interact with current running or others transactions)
--
This message was sent by Atlassian JIRA
(v6.3.11#6341)
10 years, 11 months
[JBoss JIRA] (ISPN-4167) DummyBaseTransactionManager doesn't clean up when rollback fails
by Galder Zamarreño (JIRA)
[ https://issues.jboss.org/browse/ISPN-4167?page=com.atlassian.jira.plugin.... ]
Galder Zamarreño updated ISPN-4167:
-----------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
> DummyBaseTransactionManager doesn't clean up when rollback fails
> ----------------------------------------------------------------
>
> Key: ISPN-4167
> URL: https://issues.jboss.org/browse/ISPN-4167
> Project: Infinispan
> Issue Type: Bug
> Components: Core
> Affects Versions: 6.0.2.Final
> Reporter: Dan Berindei
> Assignee: Pedro Ruivo
> Fix For: 7.2.0.CR1, 7.2.0.Final
>
>
> If the rollback fails, the thread local holding the current transaction is not cleared, and it becomes impossible to start a new transaction on the same thread.
> One way this can happen is when Infinispan registers as a XA transaction, but DummyTransactionManager is not configured to use XA Xids:
> {noformat}
> 12:47:57,169 ERROR (testng-ReplicationExceptionTest:) [DummyTransaction] ISPN000098: Exception while rollback
> java.lang.UnsupportedOperationException
> at org.infinispan.transaction.tm.DummyNoXaXid.getBranchQualifier(DummyNoXaXid.java:30)
> at org.infinispan.transaction.xa.recovery.SerializableXid.<init>(SerializableXid.java:37)
> at org.infinispan.transaction.xa.TransactionXaAdapter.convertXid(TransactionXaAdapter.java:251)
> at org.infinispan.transaction.xa.TransactionXaAdapter.rollback(TransactionXaAdapter.java:122)
> at org.infinispan.transaction.tm.DummyTransaction.runRollback(DummyTransaction.java:281)
> at org.infinispan.transaction.tm.DummyTransaction.rollback(DummyTransaction.java:88)
> at org.infinispan.transaction.tm.DummyBaseTransactionManager.rollback(DummyBaseTransactionManager.java:104)
> at org.infinispan.CacheImpl.tryRollback(CacheImpl.java:1442)
> at org.infinispan.CacheImpl.executeCommandAndCommitIfNeeded(CacheImpl.java:1418)
> at org.infinispan.CacheImpl.putInternal(CacheImpl.java:894)
> at org.infinispan.CacheImpl.put(CacheImpl.java:886)
> at org.infinispan.CacheImpl.put(CacheImpl.java:1461)
> at org.infinispan.CacheImpl.put(CacheImpl.java:225)
> at org.infinispan.tx.synchronisation.ReplicationExceptionTest.testSyncReplTimeout(ReplicationExceptionTest.java:54)
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.11#6341)
10 years, 11 months
[JBoss JIRA] (ISPN-4167) DummyBaseTransactionManager doesn't clean up when rollback fails
by Galder Zamarreño (JIRA)
[ https://issues.jboss.org/browse/ISPN-4167?page=com.atlassian.jira.plugin.... ]
Galder Zamarreño updated ISPN-4167:
-----------------------------------
Fix Version/s: 7.2.0.Final
> DummyBaseTransactionManager doesn't clean up when rollback fails
> ----------------------------------------------------------------
>
> Key: ISPN-4167
> URL: https://issues.jboss.org/browse/ISPN-4167
> Project: Infinispan
> Issue Type: Bug
> Components: Core
> Affects Versions: 6.0.2.Final
> Reporter: Dan Berindei
> Assignee: Pedro Ruivo
> Fix For: 7.2.0.CR1, 7.2.0.Final
>
>
> If the rollback fails, the thread local holding the current transaction is not cleared, and it becomes impossible to start a new transaction on the same thread.
> One way this can happen is when Infinispan registers as a XA transaction, but DummyTransactionManager is not configured to use XA Xids:
> {noformat}
> 12:47:57,169 ERROR (testng-ReplicationExceptionTest:) [DummyTransaction] ISPN000098: Exception while rollback
> java.lang.UnsupportedOperationException
> at org.infinispan.transaction.tm.DummyNoXaXid.getBranchQualifier(DummyNoXaXid.java:30)
> at org.infinispan.transaction.xa.recovery.SerializableXid.<init>(SerializableXid.java:37)
> at org.infinispan.transaction.xa.TransactionXaAdapter.convertXid(TransactionXaAdapter.java:251)
> at org.infinispan.transaction.xa.TransactionXaAdapter.rollback(TransactionXaAdapter.java:122)
> at org.infinispan.transaction.tm.DummyTransaction.runRollback(DummyTransaction.java:281)
> at org.infinispan.transaction.tm.DummyTransaction.rollback(DummyTransaction.java:88)
> at org.infinispan.transaction.tm.DummyBaseTransactionManager.rollback(DummyBaseTransactionManager.java:104)
> at org.infinispan.CacheImpl.tryRollback(CacheImpl.java:1442)
> at org.infinispan.CacheImpl.executeCommandAndCommitIfNeeded(CacheImpl.java:1418)
> at org.infinispan.CacheImpl.putInternal(CacheImpl.java:894)
> at org.infinispan.CacheImpl.put(CacheImpl.java:886)
> at org.infinispan.CacheImpl.put(CacheImpl.java:1461)
> at org.infinispan.CacheImpl.put(CacheImpl.java:225)
> at org.infinispan.tx.synchronisation.ReplicationExceptionTest.testSyncReplTimeout(ReplicationExceptionTest.java:54)
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.11#6341)
10 years, 11 months
[JBoss JIRA] (ISPN-2813) DummyTransaction do not commit is last resource transaction is read-only
by Galder Zamarreño (JIRA)
[ https://issues.jboss.org/browse/ISPN-2813?page=com.atlassian.jira.plugin.... ]
Galder Zamarreño updated ISPN-2813:
-----------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
> DummyTransaction do not commit is last resource transaction is read-only
> ------------------------------------------------------------------------
>
> Key: ISPN-2813
> URL: https://issues.jboss.org/browse/ISPN-2813
> Project: Infinispan
> Issue Type: Bug
> Components: Transactions
> Affects Versions: 5.1.6.FINAL
> Reporter: Vitalii Tymchyshyn
> Assignee: Pedro Ruivo
> Priority: Minor
> Fix For: 7.2.0.CR1, 7.2.0.Final
>
>
> Currently HEAD DummyTransaction.java has this code:
> ...
> for (XAResource res : resources) {
> try {
> int prepareStatus = res.prepare(xid);
> transaction.setPrepareStatus(prepareStatus);
> ...
> This means that transaction gets prepare status of the last resource (cache in case of infinispan) enlisted.
> Also it has next code:
> ...
> if (transaction.getPrepareStatus() == XAResource.XA_RDONLY) {
> log.debug("This is a read-only tx");
> } else {
> ... Do commit ...
> ...
> This means that if last resource returned XA_RDONLY (e.g. when on last cache only get was performed) all other resources are not committed.
> For me this results in locks held indefinitely and transaction leak.
> Correct would be to remember prepare status per-resource and act accordinly.
--
This message was sent by Atlassian JIRA
(v6.3.11#6341)
10 years, 11 months