[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: Back-sql, debugging
> Hello,
>
> I use Sybase 12.5.1 with last last openldap with last unixodbc with last
> freetds driver.
> (with last I mean the stable release of 1.04.04)
>
> I don't know other free odbc driver to try.
libiodbc, for instance; that's what I'm using
(not last, though), and PostgreSQL.
It definitely looks like an issue not related
to back-sql, unless an improper use of the ODBC
API can be clearly identified. I don't see any,
but I'm not an ODBC expert.
p.
>
> Regards and thanks for help
>
> Goyman
>
> Pierangelo Masarati wrote:
>> I thinkl it's finally time that you tell us what version of OpenLDAP
>> software you're using, and what ODBC and what RDBMS, just for the
>> records.
>> I note that there's plenty of error messaging in back-sql; you get
>> none
>> because the ODBC is returning none to the client. Apparently,
>> at_query is failing, but the ODBC can't tell why. It logs this
>> obscure line,
>>
>> IF @@TRANCOUNT > 0 ROLLBACK BEGIN TRANSACTION
>>
>> which looks like the ODBC issued a rollback, and the RDBMS didn't like
>> it.
>> I know some RDBMS need a commit/rollback before closing a
>> transaction,
>> even when only read operations were performed. Others don't tolerate
>> it on read operations. AFAIK back-sql does the rollback after reads,
>> but I don't see any between the oc_ and the at_ queries, so it might
>> be something internal to the ODBC. I suggest you try another one.
>>
>> p.
>>
>>
>>>Pierangelo Masarati wrote:
>>>
>>>>>Hello,
>>>>>
>>>>>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()
>>>>>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
>>>>>==>backsql_free_db_conn()
>>>>>
>>>>>
>>>>>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:
>>>>>BEGIN TRANSACTION
>>>>>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:
>>>>>IF @@TRANCOUNT > 0 ROLLBACK BEGIN TRANSACTION
>>>>>
>>>>
>>>>
>>>>The query is above:
>>>>
>>>>SELECT
>>>>id,name,keytbl,keycol,create_proc,delete_proc,expect_return FROM
>>>> ldap_oc_mappings
>>>>
>>>>Do yu have ldap_oc_mappings? Does it have the requested columns?
>>>> This output looks really obscure to me. You may want to add a few
>>>> printf in back-sql before the queries are executed.
>>>>
>>>>p.
>>>>
>>>>
>>>
>>>Hello,
>>>
>>>this query work, the query that don't work, and that's not executed is
>>> the 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=?).
>>>
>>>I checked the source code, and this error is printed if the execution
>>> of
>>> the query fail, but the query is not executed (as you can see in the
>>>sql output).
>>>
>>>So I do not understand why.
>>>
>>>Regards
>>>
>>>Goyman
>>
>>
>>
--
Pierangelo Masarati
mailto:pierangelo.masarati@sys-net.it