From 80dd0a3c389127c181a9bdd256bef5d73888b9d2 Mon Sep 17 00:00:00 2001 From: dimitr Date: Tue, 17 Feb 2009 20:14:05 +0000 Subject: [PATCH] Move the caller statistics update out of the loop. This solves CORE-2329: Significant performance degradation in v2.1.2rc1. It has been done in HEAD recently, so it doesn't require the front port. --- src/jrd/exe.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/jrd/exe.cpp b/src/jrd/exe.cpp index 3b49fb9e65..ce7d5a3f23 100644 --- a/src/jrd/exe.cpp +++ b/src/jrd/exe.cpp @@ -2731,8 +2731,6 @@ static jrd_nod* looper(thread_db* tdbb, jrd_req* request, jrd_nod* in_node) BUGCHECK(168); /* msg 168 looper: action not yet implemented */ } - request->adjustCallerStats(); - } // try catch (const Firebird::Exception& ex) { @@ -2784,6 +2782,8 @@ static jrd_nod* looper(thread_db* tdbb, jrd_req* request, jrd_nod* in_node) } } // while() + request->adjustCallerStats(); + // If there is no node, assume we have finished processing the // request unless we are in the middle of processing an // asynchronous message