Hi Pavel,

Since we are at the last stage to release the project, is it safe to replace
with the latest sqlite version without our QA's full testing of the
application's function? I knew there are many improvement in the latest
version. :-). So for a temp solution, I will open the database again if the
application detect there is a SQLITE_MISUSE, is this solution safe enough?

Thanks,
Tim



Pavel Ivanov-2 wrote:
> 
>> I am now using SQLite version 3.3.5, and i cannot find flag
>> SQLITE3_THREADSAFE in source code, so my question is how can i ensure i
>> compile with this option?
> 
> Probably there was no such flag in that version yet (I don't know
> enough about it). Why don't you use the latest version?
> 
>> The second question is when i met SQLITE_MISUSE error, can i reset or
>> reopen
>> the database to avoid this error?
> 
> You cannot reset database connection, but you can close it (probably
> finalizing all statements before that using
> http://www.sqlite.org/c3ref/next_stmt.html if it exist in 3.3.5) and
> open it again.
> 
> 
> Pavel
> 
> On Sun, Jan 10, 2010 at 12:27 AM, tim shen  wrote:
>>
>> hi Pavel,
>> Thanks for your reply and reminder.
>> I am now using SQLite version 3.3.5, and i cannot find flag
>> SQLITE3_THREADSAFE in source code, so my question is how can i ensure i
>> compile with this option?
>>
>> The second question is when i met SQLITE_MISUSE error, can i reset or
>> reopen
>> the database to avoid this error?
>>
>> Regards,
>> Tim
>>
>>
>> Pavel Ivanov-2 wrote:
>>>
>>> Oh, and one more thing: sqlite-dev list is for questions related to
>>> developing SQLite itself. For problems with using SQLite you should
>>> write to sqlite-users list (put in CC).
>>>
>>> Pavel
>>>
>>> On Fri, Jan 8, 2010 at 7:50 AM, Pavel Ivanov  wrote:
>>>> As you're new to SQLite you could easily make some incorrect usages of
>>>> SQLite's API. But we won't be able to say to you exactly what is
>>>> incorrect until we don't see the actual code. So please show it to us.
>>>> Incidentally exact value of SQLITE3_THREADSAFE (0, 1 or 2) during
>>>> compilation is also important as well as any other flags you use.
>>>>
>>>> And just out of curiosity: how did you check that the reason "using
>>>> sqlite_close or calling sqlite_exec with the same database pointer
>>>> simultaneously from two separate threads" is not applied to you if as
>>>> you said in the application "you saved this handle as global variable,
>>>> then in other threads you use it"?
>>>>
>>>>
>>>> Pavel
>>>>
>>>> On Fri, Jan 8, 2010 at 3:42 AM, Tim Shen  wrote:
>>>>> Hi All,
>>>>>
>>>>>   I am new to SQLite and recently I took over a new project which
>>>>> using
>>>>> SQLite DB under WinCE. We build the SQlite.dll using flag
>>>>> SQLITE3_THREADSAFE, and used Multi-Thread programming in the
>>>>> application.
>>>>> The problem is that in some operations, function call sqlite3_exec()
>>>>> will
>>>>> throw out error SQLITE_MISUSE.
>>>>>   I call the sqlite3_open16() and sqlite3_close() in main thread and
>>>>> saved
>>>>> this handle as global variable. Then in other threads, I will use this
>>>>> global variable to call other sqlite3 function such as
>>>>> sqlite3_exec(),sqlite3_get_table(),sqlite3_free_table().
>>>>>  I searched on the sqlite3 site, and got the following information
>>>>>
>>>>> SQLITE_MISUSE
>>>>> This error might occur if one or more of the SQLite API routines is
>>>>> used
>>>>> incorrectly. Examples of incorrect usage include calling sqlite_exec
>>>>> after
>>>>> the database has been closed using sqlite_close or calling sqlite_exec
>>>>> with
>>>>> the same database pointer simultaneously from two separate threads.
>>>>>
>>>>> I checked above 2 possible reason may caused this error and make sure
>>>>> it
>>>>> is
>>>>> not caused by them. Any other advise you guys can give it to me?
>>>>> Thanks
>>>>> in
>>>>> advance.
>>>>>
>>>>> Regards,
>>>>> Tim
>>>>>
>>>>> _______________________________________________
>>>>> sqlite-dev mailing list
>>>>> sqlite-...@sqlite.org
>>>>> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-dev
>>>>>
>>>>
>>> _______________________________________________
>>> sqlite-users mailing list
>>> sqlite-users@sqlite.org
>>> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
>>>
>>>
>>
>> --
>> View this message in context:
>> http://old.nabble.com/Re%3A--sqlite-dev--Why-I-always-got-error-SQLITE_MISUSE-21--*-Library-used-incorrectly-*--tp27075467p27095772.html
>> Sent from the SQLite mailing list archive at Nabble.com.
>>
>> _______________________________________________
>> sqlite-users mailing list
>> sqlite-users@sqlite.org
>> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
>>
> _______________________________________________
> sqlite-users mailing list
> sqlite-users@sqlite.org
> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
> 
> 

-- 
View this message in context: 
http://old.nabble.com/Re%3A--sqlite-dev--Why-I-always-got-error-SQLITE_MISUSE-21--*-Library-used-incorrectly-*--tp27075467p27110812.html
Sent from the SQLite mailing list archive at Nabble.com.
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to