Παναγιώτης Ψαρράκος wrote:
I changed the syntax of the ldapserach query and moved the filters at the end of the command but i got error that there is "No such object (32)" i.e. ldapsearch -h 10.117.1.244 -LLL -x -b 'dc=cosmote,dc=ro' -D "cn=pcrfuser,dc=cosmote,dc=ro" -w pcrfuser123 "(&(billtype=PREPAID)(msisdn=*))" I am worried that maybe i have not constructed properly the table OL_dn2id or i use a wrong conifuguration mapping for my data and that is why my ldap search query does not work
Sounds like you're inserting data from SQL, and not using back-ndb itself?
do you have any reference in order to understand the role and structure of table OL_dn2id?
Google "openldap ndb cluster"...
http://www.openldap.org/lists/openldap-devel/200810/msg00094.html
http://assets.en.oreilly.com/1/event/21/LDAP%20for%20MySQL%20Cluster%20-%20b...
Thanks Panagiotis
*Απο:* Peter Gietz peter.gietz@daasi.de *Προς:* Παναγιώτης Ψαρράκος fishakos@yahoo.gr *Κοιν.:* "openldap-technical@openldap.org" openldap-technical@openldap.org *Στάλθηκε:* 2:14 μ.μ. Δευτέρα, 8 Οκτωβρίου 2012 *Θεμα:* Re: LDAP Search Question (use of * in search filter)
Am 08.10.2012 12:45, schrieb Παναγιώτης Ψαρράκος:
Dear all My environment consist of a mySWL Cluster database that use ndbcluster storage engine. I have install openLDAP using back ndb in otder to expose my database in LDAP fromat. The main table of LDAP is the table OL_dn2id. Entries in this table have the following format eid | object_class | a0 | a1 | a2 | a3 | a4 | a5 ... | a15
1 | usertable@top mailto:usertable@top | ro | mydb | msisdn=40765111111 | billtype=prepaid | null (all other columns are null)
2 | usertable@top mailto:usertable@top | ro | mydb | msisdn=40765111112 | billtype=postpaid | null (all other columns are null) My database definition in slapd.conf is the following database ndb suffix "dc=mydb,dc=ro" rootdn "cn=Manager,dc=mydb,dc=ro" I want to execute ldap search queries based on msisdn or billtype attribute. I am trying to this using the command i.e. return all postpaid user msisdns - i ma trying to use the * in the filter in order to have all msisdns ldapsearch -h localhost -LLL -x -s sub -d 32 -b bill=postpaid,msisdn=*,dc=cosmote,dc=ro
You are not using * in a filter but in the basedn which does not conform to dn syntax.
I am not sure, how your filter should look like, but it should be stated at the end of your ldapsearch, e.g. ... -b dc=cosmote,dc=ro "(&(bill=postpaid)(msisdn=*))"
This depends on how the data are modelled ldap-wise and not ndb-wise.