Always abort transaction when catching an error in HTTP request loop. This is because

a new transaction is started for the error handling also, so if something goes wrong
in error handling, we need to abort the transaction.
This commit is contained in:
hns 2002-10-23 12:46:21 +00:00
parent 2c9e42bcb3
commit 8d85952f24

View file

@ -290,17 +290,18 @@ public final class RequestEvaluator implements Runnable {
} catch (Exception x) { } catch (Exception x) {
abortTransaction (false);
// If the transactor thread has been killed by the invoker thread we don't have to // If the transactor thread has been killed by the invoker thread we don't have to
// bother for the error message, just quit. // bother for the error message, just quit.
if (localrtx != rtx) { if (localrtx != rtx) {
abortTransaction (false);
break; break;
} }
res.reset (); res.reset ();
// check if we tried to process the error already // check if we tried to process the error already
if (error == null) { if (error == null) {
abortTransaction (false);
app.errorCount += 1; app.errorCount += 1;
app.logEvent ("Exception in "+Thread.currentThread()+": "+x); app.logEvent ("Exception in "+Thread.currentThread()+": "+x);
// Dump the profiling data to System.err // Dump the profiling data to System.err