From 86a13a070a5adbc1d52dbf0943318dc01a3ee62e Mon Sep 17 00:00:00 2001
From: neil_a_wilson <neil_a_wilson@localhost>
Date: Mon, 18 Dec 2006 22:01:00 +0000
Subject: [PATCH] Update the LDAP connection handler and LDAP client connection to properly update the abandon operation count when appropriate. Also, update a number of test cases to verify that the LDAPStatistics information is properly updated.
---
opendj-sdk/opends/src/server/org/opends/server/protocols/ldap/LDAPClientConnection.java | 32 +++++++++++++++++++++++++++++---
1 files changed, 29 insertions(+), 3 deletions(-)
diff --git a/opendj-sdk/opends/src/server/org/opends/server/protocols/ldap/LDAPClientConnection.java b/opendj-sdk/opends/src/server/org/opends/server/protocols/ldap/LDAPClientConnection.java
index c8c22af..147535a 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/protocols/ldap/LDAPClientConnection.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/protocols/ldap/LDAPClientConnection.java
@@ -1312,7 +1312,15 @@
{
if (ps.getSearchOperation().getMessageID() == messageID)
{
- return ps.getSearchOperation().cancel(cancelRequest);
+ CancelResult cancelResult =
+ ps.getSearchOperation().cancel(cancelRequest);
+
+ if (keepStats && (cancelResult == CancelResult.CANCELED))
+ {
+ statTracker.updateAbandonedOperation();
+ }
+
+ return cancelResult;
}
}
@@ -1320,6 +1328,12 @@
}
else
{
+ CancelResult cancelResult = op.cancel(cancelRequest);
+ if (keepStats && (cancelResult == CancelResult.CANCELED))
+ {
+ statTracker.updateAbandonedOperation();
+ }
+
return op.cancel(cancelRequest);
}
}
@@ -1347,7 +1361,11 @@
{
try
{
- o.cancel(cancelRequest);
+ CancelResult cancelResult = o.cancel(cancelRequest);
+ if (keepStats && (cancelResult == CancelResult.CANCELED))
+ {
+ statTracker.updateAbandonedOperation();
+ }
}
catch (Exception e)
{
@@ -1408,7 +1426,11 @@
{
try
{
- o.cancel(cancelRequest);
+ CancelResult cancelResult = o.cancel(cancelRequest);
+ if (keepStats && (cancelResult == CancelResult.CANCELED))
+ {
+ statTracker.updateAbandonedOperation();
+ }
}
catch (Exception e)
{
@@ -1848,6 +1870,10 @@
protocolOp.getIDToAbandon());
abandonOp.run();
+ if (keepStats && (abandonOp.getResultCode() == ResultCode.CANCELED))
+ {
+ statTracker.updateAbandonedOperation();
+ }
return connectionValid;
}
--
Gitblit v1.10.0