Hi,
I don't think this is a good idea.
If you want to make a diffrence between "search succesfull, some results
found" and "search successfull, no results found" you schould not declare
the last result as being unsuccessfull.
If you want to stress test an ldap server, the difference between success
and failure are not whteher there are any results, but whether the LDAP
server is responding properly.
If you want to make a difference, I think we can better start to define some
sort of XML template for an ldap answer, and implement a way to translate an
ldap answer into this template and show this template as being the ldap
result.
You can then use all kind of asertions to see or the answer is conform your
own wishes.
Just a short idea about fields ( I don't know whether all these files can be
read by the JAVA LDAP tools, but I think that these fields should be present
in such a template.
---
Start Time :Tue Oct 28 14:28:24 2003
Duration :0.020 sec
User :cn=admin,o=Fasr
IP :127.0.0.1
Op-Name :LDAP_Con1953_Op21
ConnID :1953
Operation :SEARCH
Version :3
MessageID :4302
Base Obj :ou=ctscApplicationDataRepository, o=Fasr
Scope :onelevel
Filter
:(&(objectclass=ctscPropertyDefinition)(ctscObjectClass=User))
Size Limit :0
Time Limit :0
Deref Alias :never
Types Only :no
Req Attr # :all
Found Entries :0
Found Attrs :0
Controls # :0
Bytes Received :136
Bytes Returned :41
Abandoned :no
Result Code :0 (success)
----------------
Greets, Dolf
----- Original Message -----
From: "Mcgladrey, Kayne" <[EMAIL PROTECTED]>
To: "jMeter Developers List" <[EMAIL PROTECTED]>
Sent: Thursday, November 06, 2003 23:57
Subject: PATCH LdapClient.java
Hello,
This patch addresses the current behavior of the LDAP Search operation.
Under the current version, LDAP Searches that are successful but do not
return results are marked as successful. The LDAP RFC states that result
code 0 will be returned if no results were returned.
However, this makes the results from jMeter misleading. Consider this
example:
- Thread Group
- LDAP Sampler: add
- Server: Master Directory Server, incorrect user name, valid DN
- LDAP Sampler: search
- Server: Replicate Directory Server, same DN as in "Add"
(Assume a working one-way replication agreement between the Master and the
Replicate)
Under these circumstances, the "Add" operation against the Master Directory
Server will fail with error 32, 34, or 50 (depending on the server
implementation). However, the search for the new record against the
Replicate Directory Server will appear (to the end user) to be successful.
In fact, it will have returned no results.
The patched version addresses this behavior. If no results are returned,
jMeter will mark the search as failed.
Thank you,
Kayne McGladrey
Member - Technical Group
AT&T Wireless
--- LdapClient.java.backup 2003-11-05 16:31:38.000000000 -0800
+++ LdapClient.java 2003-11-06 14:24:00.000000000 -0800
@@ -65,6 +65,8 @@
import javax.naming.directory.ModificationItem;
import javax.naming.directory.SearchControls;
+import javax.naming.NamingEnumeration;
+
import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
@@ -136,7 +138,11 @@
{
SearchControls searchcontrols =
new SearchControls(2, 1L, 0, null, false, false);
- dirContext.search(searchBase, searchFilter, searchcontrols);
+ //dirContext.search(searchBase, searchFilter, searchcontrols);
+ NamingEnumeration result = dirContext.search(searchBase,
searchFilter, searchcontrols);
+ if (! result.hasMore()) {
+ throw new NamingException(" [LDAP: error code 0 - No
Results Returned];");
+ }
}
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]