[jboss-svn-commits] JBL Code SVN: r24872 - in labs/jbosstm/trunk/ArjunaJTS: jts/classes/com/arjuna/ats/internal/jts and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu Jan 22 08:34:56 EST 2009


Author: mark.little at jboss.com
Date: 2009-01-22 08:34:56 -0500 (Thu, 22 Jan 2009)
New Revision: 24872

Modified:
   labs/jbosstm/trunk/ArjunaJTS/jtax/classes/com/arjuna/ats/internal/jta/transaction/jts/AtomicTransaction.java
   labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/ControlWrapper.java
Log:
https://jira.jboss.org/jira/browse/JBTM-476

Modified: labs/jbosstm/trunk/ArjunaJTS/jtax/classes/com/arjuna/ats/internal/jta/transaction/jts/AtomicTransaction.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jtax/classes/com/arjuna/ats/internal/jta/transaction/jts/AtomicTransaction.java	2009-01-22 13:11:47 UTC (rev 24871)
+++ labs/jbosstm/trunk/ArjunaJTS/jtax/classes/com/arjuna/ats/internal/jta/transaction/jts/AtomicTransaction.java	2009-01-22 13:34:56 UTC (rev 24872)
@@ -172,7 +172,7 @@
 		}
 		catch (Unavailable e)
 		{
-			_theStatus = Status.StatusNoTransaction;
+			_theStatus = Status.StatusNoTransaction;  // unknown?
 
 			throw new NoTransaction();
 		}

Modified: labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/ControlWrapper.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/ControlWrapper.java	2009-01-22 13:11:47 UTC (rev 24871)
+++ labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/ControlWrapper.java	2009-01-22 13:34:56 UTC (rev 24872)
@@ -63,6 +63,7 @@
 import org.omg.CORBA.UNKNOWN;
 import org.omg.CORBA.BAD_OPERATION;
 import org.omg.CORBA.INVALID_TRANSACTION;
+import org.omg.CORBA.TRANSACTION_ROLLEDBACK;
 
 /**
  * This class attempts to mask the local/remote control issue. We try to use
@@ -271,6 +272,10 @@
 				{
 					throw new Unavailable();
 				}
+				catch (final NullPointerException ex)
+				{
+				    throw new Unavailable();
+				}
 
 				if (t != null)
 					t.commit(report_heuristics);
@@ -278,9 +283,9 @@
 					throw new Unavailable();
 			}
 		}
-		catch (NullPointerException ex)
+		catch (NullPointerException ex)  // if local handle is null then it was terminated (reaper)
 		{
-			throw new Unavailable();
+			throw new TRANSACTION_ROLLEDBACK();
 		}
 	}
 
@@ -303,7 +308,11 @@
 				{
 					throw new Unavailable();
 				}
-
+				catch (final NullPointerException ex)
+                                {
+                                    throw new Unavailable();
+                                }
+				
 				if (t != null)
 					t.rollback();
 				else
@@ -312,7 +321,7 @@
 		}
 		catch (NullPointerException ex)
 		{
-			throw new Unavailable();
+			throw new TRANSACTION_ROLLEDBACK();
 		}
 	}
 
@@ -335,7 +344,11 @@
 				{
 					throw new Unavailable();
 				}
-
+				catch (final NullPointerException ex)
+                                {
+                                    throw new Unavailable();
+                                }
+				
 				if (c != null)
 					c.rollback_only();
 				else
@@ -344,7 +357,7 @@
 		}
 		catch (NullPointerException ex)
 		{
-			throw new Unavailable();
+			throw new Inactive();
 		}
 	}
 
@@ -371,6 +384,10 @@
 				{
 					throw new UNKNOWN();
 				}
+				catch (final NullPointerException ex)
+                                {
+                                    throw new UNKNOWN();
+                                }
 			}
 		}
 		catch (NullPointerException e1)
@@ -404,6 +421,10 @@
 				{
 					throw new UNKNOWN();
 				}
+				catch (final NullPointerException ex)
+                                {
+                                    throw new UNKNOWN();
+                                }
 			}
 		}
 		catch (NullPointerException e1)
@@ -429,17 +450,17 @@
 
 					coord.register_synchronization(sync);
 				}
-				catch (Unavailable e2)
+				catch (final Unavailable e2)
 				{
 					throw new Inactive();
 				}
-				catch (Exception e3)
+				catch (final Exception e3)
 				{
 					throw new UNKNOWN();
 				}
 			}
 		}
-		catch (NullPointerException e1)
+		catch (final NullPointerException e1)
 		{
 			// not available
 
@@ -544,11 +565,15 @@
 				{
 					throw e2;
 				}
+				catch (final NullPointerException ex)
+                                {
+                                    throw new UNKNOWN();
+                                }
 			}
 		}
 		catch (NullPointerException e3)
 		{
-			return null;
+			throw new UNKNOWN();
 		}
 	}
 
@@ -564,7 +589,7 @@
 		}
 		catch (NullPointerException e)
 		{
-			return null;
+			throw new Unavailable();
 		}
 	}
 




More information about the jboss-svn-commits mailing list