WebSphereUowTransactionManager sets timeout for actual transaction only
Closes gh-25132
This commit is contained in:
		
							parent
							
								
									dfa948c2ca
								
							
						
					
					
						commit
						1dea55dc20
					
				| 
						 | 
				
			
			@ -1,5 +1,5 @@
 | 
			
		|||
/*
 | 
			
		||||
 * Copyright 2002-2019 the original author or authors.
 | 
			
		||||
 * Copyright 2002-2020 the original author or authors.
 | 
			
		||||
 *
 | 
			
		||||
 * Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
 * you may not use this file except in compliance with the License.
 | 
			
		||||
| 
						 | 
				
			
			@ -295,14 +295,14 @@ public class WebSphereUowTransactionManager extends JtaTransactionManager
 | 
			
		|||
		SuspendedResourcesHolder suspendedResources = (!joinTx ? suspend(null) : null);
 | 
			
		||||
		UOWActionAdapter<T> action = null;
 | 
			
		||||
		try {
 | 
			
		||||
			if (def.getTimeout() > TransactionDefinition.TIMEOUT_DEFAULT) {
 | 
			
		||||
			boolean actualTransaction = (uowType == UOWManager.UOW_TYPE_GLOBAL_TRANSACTION);
 | 
			
		||||
			if (actualTransaction && def.getTimeout() > TransactionDefinition.TIMEOUT_DEFAULT) {
 | 
			
		||||
				uowManager.setUOWTimeout(uowType, def.getTimeout());
 | 
			
		||||
			}
 | 
			
		||||
			if (debug) {
 | 
			
		||||
				logger.debug("Invoking WebSphere UOW action: type=" + uowType + ", join=" + joinTx);
 | 
			
		||||
			}
 | 
			
		||||
			action = new UOWActionAdapter<>(
 | 
			
		||||
					def, callback, (uowType == UOWManager.UOW_TYPE_GLOBAL_TRANSACTION), !joinTx, newSynch, debug);
 | 
			
		||||
			action = new UOWActionAdapter<>(def, callback, actualTransaction, !joinTx, newSynch, debug);
 | 
			
		||||
			uowManager.runUnderUOW(uowType, joinTx, action);
 | 
			
		||||
			if (debug) {
 | 
			
		||||
				logger.debug("Returned from WebSphere UOW action: type=" + uowType + ", join=" + joinTx);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue