[Qt-interest] QSQLITE and Network Shares
Israel Brewster
israel at frontierflying.com
Mon Nov 16 20:07:18 CET 2009
On Nov 15, 2009, at 2:13 PM, Bill King wrote:
>>
>>>
>>>
> The problem is an sqlite problem. What you are seeing is that
> another query has a lock open on the table, and your query is trying
> to elevate it's lock status.
First off yes- PostgreSQL is a good option, and one I have
implemented. I do agree that it is the way to go, however I also think
that leaving something non-functional just because there is a better
option is not acceptable. Of course, if this is a sqlite problem, then
it's not your issue.
That said, there are two serious flaws with your argument that this is
an sqlite problem. First, there ISN'T another query that has a lock on
the table. Look at the unit test I sent (with my first follow-up) - it
creates a brand new database, opens it, and IMMEDIATELY tries to run a
CREATE TABLE, getting this error (if on a network drive). The database
hasn't even existed for more than a fraction of second. How and what
could POSSIBLY have another query with a lock on the table, unless Qt
itself put it there in the open command? Besides, the query I am
running is a CREATE TABLE, so the table in question doesn't even exist
when I run the query. How on earth could there be a lock on a table
that doesn't exist? Actually, I get this error no matter the query I
run, but using a CREATE TABLE query on a brand-new database precludes
the possibility of a lock existing.
Secondly, if I take Qt out of the equation, IT WORKS. Put Qt back into
the equation, it doesn't work. Given that the only difference between
the two tests was Qt (the test being create and open a brand-new
database on a network share, and then run a CREATE TABLE query), how
could this NOT be a Qt problem? I do apologize if I am being stubborn
here, but saying it is a sqlite problem just doesn't fit the facts as
I have presented them.
>
> Seriously, I would consider a proper client/server database system
> rather than trying to get what is essentially a single user system
> to act in a networked fashion.
> There are lots of free/zero config databases out there. try
> firebirdsql for instance, or postgresql, both have very permissive
> licences, and cost you nothing.
Agreed. That said, given that according to the official sqlite people
this should work (and, in fact, does in testing once Qt is removed
from the equation) doesn't it behoove you to make it work in Qt as well?
> --
> Bill King, Software Engineer
> Qt Development Frameworks, Nokia Pty Ltd
> Brisbane Office
> _______________________________________________
> Qt-interest mailing list
> Qt-interest at trolltech.com
> http://lists.trolltech.com/mailman/listinfo/qt-interest
-----------------------------------------------
Israel Brewster
Computer Support Technician II
Frontier Flying Service Inc.
5245 Airport Industrial Rd
Fairbanks, AK 99709
(907) 450-7250 x293
-----------------------------------------------
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.qt-project.org/pipermail/qt-interest-old/attachments/20091116/ad7d7af3/attachment.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Israel Brewster.vcf
Type: text/directory
Size: 417 bytes
Desc: not available
Url : http://lists.qt-project.org/pipermail/qt-interest-old/attachments/20091116/ad7d7af3/attachment.bin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.qt-project.org/pipermail/qt-interest-old/attachments/20091116/ad7d7af3/attachment-0001.html
More information about the Qt-interest-old
mailing list