Author: cbegin
Date: Sun Mar 21 21:09:19 2010
New Revision: 925899
URL: http://svn.apache.org/viewvc?rev=925899&view=rev
Log:
Added unit test to demonstrate read-only returns same instance.
Modified:
ibatis/java/ibatis-3/trunk/ibatis-3-core/src/main/java/org/apache/ibatis/executor/CachingExecutor.java
ibatis/java/ibatis-3/trunk/ibatis-3-core/src/test/java/org/apache/ibatis/binding/BindingTest.java
ibatis/java/ibatis-3/trunk/ibatis-3-core/src/test/java/org/apache/ibatis/binding/BoundAuthorMapper.java
Modified:
ibatis/java/ibatis-3/trunk/ibatis-3-core/src/main/java/org/apache/ibatis/executor/CachingExecutor.java
URL:
http://svn.apache.org/viewvc/ibatis/java/ibatis-3/trunk/ibatis-3-core/src/main/java/org/apache/ibatis/executor/CachingExecutor.java?rev=925899&r1=925898&r2=925899&view=diff
==============================================================================
---
ibatis/java/ibatis-3/trunk/ibatis-3-core/src/main/java/org/apache/ibatis/executor/CachingExecutor.java
(original)
+++
ibatis/java/ibatis-3/trunk/ibatis-3-core/src/main/java/org/apache/ibatis/executor/CachingExecutor.java
Sun Mar 21 21:09:19 2010
@@ -81,7 +81,9 @@ public class CachingExecutor implements
try {
delegate.rollback(required);
} finally {
- tcm.rollback();
+ if (required) {
+ tcm.rollback();
+ }
}
}
Modified:
ibatis/java/ibatis-3/trunk/ibatis-3-core/src/test/java/org/apache/ibatis/binding/BindingTest.java
URL:
http://svn.apache.org/viewvc/ibatis/java/ibatis-3/trunk/ibatis-3-core/src/test/java/org/apache/ibatis/binding/BindingTest.java?rev=925899&r1=925898&r2=925899&view=diff
==============================================================================
---
ibatis/java/ibatis-3/trunk/ibatis-3-core/src/test/java/org/apache/ibatis/binding/BindingTest.java
(original)
+++
ibatis/java/ibatis-3/trunk/ibatis-3-core/src/test/java/org/apache/ibatis/binding/BindingTest.java
Sun Mar 21 21:09:19 2010
@@ -230,12 +230,16 @@ public class BindingTest {
@Test
public void shouldSelectOneAuthorFromCache() {
+ Author author1 = selectOneAuthor();
+ Author author2 = selectOneAuthor();
+ assertTrue("Same (cached) instance should be returned unless rollback is
called.", author1 == author2);
+ }
+
+ private Author selectOneAuthor() {
SqlSession session = sqlSessionFactory.openSession();
try {
BoundAuthorMapper mapper = session.getMapper(BoundAuthorMapper.class);
- Author author1 = mapper.selectAuthor(101);
- Author author2 = mapper.selectAuthor(101);
- assertTrue("Same (cached) instance should be returned unless rollback is
called.", author1 == author2);
+ return mapper.selectAuthor(101);
} finally {
session.close();
}
Modified:
ibatis/java/ibatis-3/trunk/ibatis-3-core/src/test/java/org/apache/ibatis/binding/BoundAuthorMapper.java
URL:
http://svn.apache.org/viewvc/ibatis/java/ibatis-3/trunk/ibatis-3-core/src/test/java/org/apache/ibatis/binding/BoundAuthorMapper.java?rev=925899&r1=925898&r2=925899&view=diff
==============================================================================
---
ibatis/java/ibatis-3/trunk/ibatis-3-core/src/test/java/org/apache/ibatis/binding/BoundAuthorMapper.java
(original)
+++
ibatis/java/ibatis-3/trunk/ibatis-3-core/src/test/java/org/apache/ibatis/binding/BoundAuthorMapper.java
Sun Mar 21 21:09:19 2010
@@ -8,6 +8,7 @@ import org.apache.ibatis.session.RowBoun
import java.util.List;
+...@cachenamespace(readWrite = false)
public interface BoundAuthorMapper {
//======================================================