[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: Back-sql, debugging


thanks for the answer, but I was executing slapd with -d 1 since I begun to work with.

There is a little thing I do not understand, I got this output from slapd:

backsql_get_db_conn(): first call -- reading schema map
backsql_load_schema_map(): at_query 'SELECT name,sel_expr,from_tbls,join_where,add_proc,delete_proc,param_order,expect_return FROM ldap_attr_mappings WHERE oc_map_id=?'
backsql_load_schema_map(): objectClass 'organizationalUnit': keytbl='orgunit' keycol='id'
expect_return: add=0, del=0; attributes:
backsql_load_schema_map(): autoadding 'objectClass' and 'ref' mappings
backsql_load_schema_map(): error executing at_query:
Return code: -1

But where I do not understand is that the real sql executed in the db is:

00:00000:00019:2004/04/11 17:59:34.75 server TDS_LANG, spid 19: command text:
set textsize 64512 use GAddress
00:00000:00019:2004/04/11 17:59:34.76 server TDS_LANG, spid 19: command text:
00:00000:00019:2004/04/11 17:59:34.77 server TDS_DYNP, spid 19: command text:
create proc wlkz006000 as SELECT id,name,keytbl,keycol,create_proc,delete_proc,expect_return FROM ldap_oc_mappings
00:00000:00019:2004/04/11 17:59:34.81 server TDS_LANG, spid 19: command text:

As you can see, ldap_attr_mappings is not fetched, so I don't know where the error is.

I use freetds as an odbc driver with unixodbc.

If you have any pointer that would help me a lot.



Pierangelo Masarati wrote:
run slapd with -d -1 and you get it all.  Based on what version you're
using, you'll see more or less meaningful output.  In HEAD and recent 2.2
releases you get for sure the candidate search query with '?' and a list
of the parameters below.  You don't get the queries to retrieve every
single value, though.

back-sql debugging definitely needs work.



I still try to debug my back-sql. I still have the same problem, but
now I understand it at half.

I did turn debugging on in odbc.ini, I got an sql statement like select
id... from ldap_attr_mappings where oc_map_id = ?.

I got the question mark ("?") in the log, and a call to
bindParameter.c. But I don't have exact sql statements.

My question is: do you know a way to ask openldap for all sql statement
he send to odbc? So I would be able to execute them with isql and see
the problem.



.::.:..: Celui qui appréhende le lendemain mourra idiot .:..:::