We're looking for some help with a UniOLEDB problem. I'm hoping someone can provide some input on the error.
We are currently developing a web application that uses UniOLEDB to execute SQL statements in UniData. Our code is in C# and is running as a service (single threaded). We have test case of 12 or so SQL statements that execute one after the other for a defined number of times. In otherwords the 12 statements are execute over and over for 20 times. Note the 12 statements are not dynamic so they are the same exact query each time, with no variations in data possible. What we are experiencing is a random points in the test we receive an E_FAIL condition. Sometimes it is on iteration 3 and sometimes it is on iteration 19 and sometimes somewhere else. As seen in the DRITrace log segements below there seems to be a pattern in the log of a thread change. When the problem occurs it is preceded by a change in the pattern. Also it looks as if UniData executes the query fine the error is when the data is coming back up the pipe. Check the log segments below. Finally we are using a UniOLEDB version just delivered by IBM, but prior versions also had the problem. The current version we are using is 1.4.5. The UniData version is 6.0.12. Normal set of thread changes occur and there is no error condition around this change. Note there is a change after uci::SQLFreeStmt entries. The next change occurs shortly after after a CAr, CDR log entry combination. uci::SQLFreeStmt(4100808) 00093900 uci::SQLFreeStmt(4100808) 00093901 uci::SQLFreeStmt(4100808) 00093902 THREAD CHANGED: New thread ID=5676(162c) 00093902 CArCommand(120200068)::~CArCommand() 00093903 CDRImCommandUCI::~CDRImCommandUCI 00093904 THREAD CHANGED: New thread ID=1832(728) 00093904 IDBPropertiesImpl(121732620)::GetProperties 00093905 DBPROP_CONNECTIONSTATUS 00093906 DBPROP_CONNECTIONSTATUS: Again we get a thread change in the same pattern as the last one. Everything looks good. uci::SQLFreeStmt(4100808) 00097605 uci::SQLFreeStmt(4100808) 00097606 uci::SQLFreeStmt(4100808) 00097607 THREAD CHANGED: New thread ID=5676(162c) 00097607 CArCommand(120200068)::~CArCommand() 00097608 CDRImCommandUCI::~CDRImCommandUCI 00097609 CArCommand(120197764)::~CArCommand() 00097610 CDRImCommandUCI::~CDRImCommandUCI 00097611 CArCommand(120202380)::~CArCommand() 00097612 CDRImCommandUCI::~CDRImCommandUCI 00097613 CArCommand(120204684)::~CArCommand() 00097614 CDRImCommandUCI::~CDRImCommandUCI 00097615 THREAD CHANGED: New thread ID=1832(728) 00097615 IDBPropertiesImpl(121732620)::GetProperties 00097616 DBPROP_CONNECTIONSTATUS 00097617 DBPROP_CONNECTIONSTATUS: Again we get a thread change in the same pattern as the last one. Everything looks good. uci::SQLFreeStmt(4100808) 00099443 uci::SQLFreeStmt(4100808) 00099444 uci::SQLFreeStmt(4100808) 00099445 THREAD CHANGED: New thread ID=5676(162c) 00099445 CArCommand(120204684)::~CArCommand() 00099446 CDRImCommandUCI::~CDRImCommandUCI 00099447 CArCommand(120202380)::~CArCommand() 00099448 CDRImCommandUCI::~CDRImCommandUCI 00099449 CArCommand(120197764)::~CArCommand() 00099450 CDRImCommandUCI::~CDRImCommandUCI 00099451 THREAD CHANGED: New thread ID=1832(728) 00099451 IDBPropertiesImpl(121732620)::GetProperties 00099452 DBPROP_CONNECTIONSTATUS 00099453 DBPROP_CONNECTIONSTATUS: The patterns above keep occuring for a period of time. This seems to be a good pattern when everything is working correctly. BUT then the next section of logs display thread changes, but they do not follow the patterns above and wam! the error occurs. 00134309 uci::SQLFetch(4100808) 00134310 CArIRowsetImpl::GetNextRows(Got:1) 00134311 CArIRowsetImpl(121726428)::GetData(121725064, 121747320, 2065392) 00134312 CDRImAdmin::ClearError 00134313 CArCommand(120217196)::GetColumnInfo() 00134314 CArCommand(120217196)::GetColumnInfo() 00134315 THREAD CHANGED: New thread ID=5676(162c) 00134315 CArCommand(120196428)::~CArCommand() 00134316 CDRImCommandUCI::~CDRImCommandUCI 00134317 CDRImUCIHSTMT::Close 00134318 Closing UCI HSTMT 4100808 00134319 uci::SQLFreeStmt(4100808) 00134320 uci::SQLFreeStmt(4100808) 00134321 uci::SQLFreeStmt(4100808) 00134322 CArCommand(120197764)::~CArCommand() 00134323 CDRImCommandUCI::~CDRImCommandUCI 00134324 CArCommand(120204684)::~CArCommand() 00134325 CDRImCommandUCI::~CDRImCommandUCI 00134326 CArCommand(120202380)::~CArCommand() 00134327 CDRImCommandUCI::~CDRImCommandUCI 00134328 CArCommand(120214732)::~CArCommand() 00134329 CDRImCommandUCI::~CDRImCommandUCI 00134330 CArCommand(120216652)::~CArCommand() 00134331 CDRImCommandUCI::~CDRImCommandUCI 00134332 THREAD CHANGED: New thread ID=1832(728) 00134332 CArIRowsetImpl(121726428)::ReleaseRows 00134333 CDRImAdmin::ClearError 00134334 CArIRowsetImpl(121726428)::GetNextRows(hChapter:0, Asked for:1) 00134335 CDRImAdmin::ClearError 00134336 CDRImAdmin::ClearError 00134337 CArRowset(121726428)::FetchRows() 00134338 CDRImRowsetUCI::GetNextRows 00134339 CDRImAdmin::ClearError 00134340 CDRImRowsetUCI::RestoreBindings 00134341 uci::SQLFetch(4100808) 00134342 uci::SQLError(4100808) 00134343 CDRImAdmin::PutError 00134344 FAILED... method:CDRImRowsetUCI::GetNextRows() UCI call:uci::SQLFetch() ERROR:Died in UCI::SQLFetch() with SQLSTATE S1010, Native error:0 [IBM][SQL Client]Function call is illegal at this point 00134345 CArIRowsetImpl::GetNextRows(Got:0) 00134346 IDBPropertiesImpl(121732620)::GetProperties 00134347 DBPROP_CONNECTIONSTATUS 00134348 DBPROP_CONNECTIONSTATUS: -- u2-users mailing list [EMAIL PROTECTED] http://www.oliver.com/mailman/listinfo/u2-users