[teiid-commits] teiid SVN: r4604 - branches/7.7.x/engine/src/main/java/org/teiid/dqp/internal/process.

teiid-commits at lists.jboss.org teiid-commits at lists.jboss.org
Tue Oct 22 10:52:05 EDT 2013


Author: jolee
Date: 2013-10-22 10:52:04 -0400 (Tue, 22 Oct 2013)
New Revision: 4604

Modified:
   branches/7.7.x/engine/src/main/java/org/teiid/dqp/internal/process/RequestWorkItem.java
Log:
TEIID-2701: Do not proactively close source executions under a transaction scope higher than request

Modified: branches/7.7.x/engine/src/main/java/org/teiid/dqp/internal/process/RequestWorkItem.java
===================================================================
--- branches/7.7.x/engine/src/main/java/org/teiid/dqp/internal/process/RequestWorkItem.java	2013-10-11 14:21:18 UTC (rev 4603)
+++ branches/7.7.x/engine/src/main/java/org/teiid/dqp/internal/process/RequestWorkItem.java	2013-10-22 14:52:04 UTC (rev 4604)
@@ -387,19 +387,19 @@
 			}
 		}
 		if (this.transactionState == TransactionState.ACTIVE) {
-			/*
-			 * TEIID-14 if we are done producing batches, then proactively close transactional 
-			 * executions even ones that were intentionally kept alive. this may 
-			 * break the read of a lob from a transactional source under a transaction 
-			 * if the source does not support holding the clob open after commit
-			 */
-        	for (DataTierTupleSource connectorRequest : getConnectorRequests()) {
-        		if (connectorRequest.isTransactional()) {
-        			connectorRequest.fullyCloseSource();
-        		}
-            }
 			this.transactionState = TransactionState.DONE;
 			if (transactionContext.getTransactionType() == TransactionContext.Scope.REQUEST) {
+				/*
+				 * TEIID-14 if we are done producing batches, then proactively close transactional 
+				 * executions even ones that were intentionally kept alive. this may 
+				 * break the read of a lob from a transactional source under a transaction 
+				 * if the source does not support holding the clob open after commit
+				 */
+	        	for (DataTierTupleSource connectorRequest : getConnectorRequests()) {
+	        		if (connectorRequest.isTransactional()) {
+	        			connectorRequest.fullyCloseSource();
+	        		}
+	            }
 				this.transactionService.commit(transactionContext);
 			} else {
 				suspend();



More information about the teiid-commits mailing list