RE: [sqlite] Java Hibernate support?
I think the question is: "Does Hibernate for Java support SQLite?" Ionut -Original Message- From: Richard Boehme [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 23, 2005 6:23 PM To: sqlite-users@sqlite.org Subject: [sqlite] Java Hibernate support? Does SQLite support Hibernate for Java? I've been googling on it but haven't come up with anything Richard Boehme
RE: [sqlite] sqlite performance variationin linux and windows
Hi, So the VC++ 7.1 dll is much faster than the VC++ 6, up to 20% in some operations, and the "MS mixed dll load bug" is not a problem, assuming sqlite doesn't mix native code with managed .net code :). Anyone using other compiler to build sqlite on Windows ? Maybe Borland ? I seems there is a lot o room for faster sqlite.dll by using other compiers than VC++ 6. We can run some tests to see which is faster ... Ionut Filip -Original Message- From: Robert Simpson [mailto:[EMAIL PROTECTED] Sent: Saturday, February 26, 2005 1:06 AM To: sqlite-users@sqlite.org; 'Keith Herold' Subject: RE: [sqlite] sqlite performance variationin linux and windows > -Original Message- > From: Keith Herold [mailto:[EMAIL PROTECTED] > Sent: Friday, February 25, 2005 3:57 PM > To: sqlite-users@sqlite.org > Subject: Re: [sqlite] sqlite performance variationin linux and windows > > http://www.adtmag.com/article.asp?id=7421 > > http://msdn.microsoft.com/library/default.asp?url=/library/en- > us/dv_vstechart/html/vcconMixedDLLLoadingProblem.asp > > It's been awhile since Iooked at this, but I distinctly remember > reading from one of the product managers at MS that this wouldn't be > fixed until 2005. The basic details were, I think, that the 'native' > multithreaded C++ applications, under heavy load, would kill deadlock > and halt. Since I work for a speech recognition company, the cpu is > *always* under heavy load, and the problem has kept us from moving to > .NET . Otherwise, I think we would probably do switch, since there > are some frustrating bugs in VC6 that have been fixed. > > I also don't know if this has been fixed already, or not. According to the article on MSDN's website this only pertains to mixed-mode C++ applications. In otherwords, a C++ application containing both C++ managed and unmanaged code. Code written entirely managed or entirely unmanaged (native -- such as SQLite) are unaffected. Robert
RE: [sqlite] sqlite performance variationin linux and windows
Hi Appadurai, >From my experience the stock sqlite.dll is not very fast. I guess it's build with VC++ 6. Using VC++ 7.1 I was able to build a version up to 10-15% faster, not a bad optimization for 0 lines of code :) . It was a little bigger, about +25%, but for desktop this is not a problem. I only did this for sqlite 2.8.*, but it should also work for 3.* . Is there any technical reason why the "stock" dll is build with VC++ 6 while better compilers are available ? Ionut Filip -Original Message- From: Neelamegam Appadurai [mailto:[EMAIL PROTECTED] Sent: Friday, February 25, 2005 2:05 PM To: sqlite-users@sqlite.org; [EMAIL PROTECTED] Subject: Re: [sqlite] Re: sqlite performance variationin linux and windows Hi Chris, Thanks for the detailed explanation, I will dig deeper into my code to see if there is anything wrong in the OS specific code in my appln. Anyway thanks for the support. appadurai
RE: [sqlite] perfromance of UPDATE
Hi Nenad, Use prepared (precompiled) statements into a single transaction. It will be few hundred times faster ... Ionut -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: Monday, January 17, 2005 9:09 PM To: sqlite-users@sqlite.org Subject: [sqlite] perfromance of UPDATE Hi, I'm using sqlite 3.0.8 on Linux, and the performance of UPDATE command seems to be slow. Here is the test program: error_code = sqlite3_open(":memory:", _db); if (error_code) { return (-1); } // set PRAGMAs if (sqlite3_exec(test_db, "PRAGMA synchronous=OFF;", NULL, 0, NULL)) sqlite_error(test_db); if (sqlite3_exec(test_db, "PRAGMA temp_store=MEMORY;", NULL, 0, NULL)) sqlite_error(test_db); if (sqlite3_exec(test_db, "PRAGMA default_temp_store=MEMORY;", NULL, 0, NULL)) sqlite_error(test_db); if (sqlite3_exec(test_db, "CREATE TABLE ana_db (item1 integer, item2 integer, item3 integer, item4 integer, item5 integer);", NULL, 0, NULL)) sqlite_error(test_db); // insert values for 1 records for (ii=0; ii< 1; ii++) { if (error_code = sqlite3_exec(test_db, "INSERT INTO ana_db VALUES ('ii', 1, 0, 1, 100);", NULL, 0, NULL)) { sqlite_error(test_db); return (-1); } } This 1 INSERTs take about 2.2 seconds, not bad. if (error_code = sqlite3_exec(test_db, "UPDATE ana_db SET item2=item2+1 WHERE item1==1;", NULL, 0, NULL)) { sqlite_error(test_db); return (-1); } This first UPDATE took about 37 miliSec. if (error_code = sqlite3_exec(test_db, "UPDATE ana_db SET item2=item2+1 WHERE item1==;", NULL, 0, NULL)) { sqlite_error(test_db); return (-1); } This second UPDATE took about 36.8 miliSec. if (error_code = sqlite3_exec(test_db, "SELECT SUM(item2) FROM ana_db WHERE item5==100;", myCallBack2, , NULL)) { sqlite_error(test_db); return (-1); } Finally, SELECT took about 48 miliSec. My question is, why did the two UPDATES take so much time, compared to INSERT. Thanks, Nenad
RE: [sqlite] Very slow insert???
Hello, > We have to insert ~ 8000 rows. It takes several minutes in P4 machine!!! Use precompiled statement(s) (see the docs) in a single transaction. Ionut Filip. ps: ... then tell us the difference ;) -Original Message- From: Buu Hao Tran [mailto:[EMAIL PROTECTED] Sent: Saturday, August 21, 2004 2:06 PM To: [EMAIL PROTECTED] Subject: [sqlite] Very slow insert??? Hi all, We have to insert ~ 8000 rows. It takes several minutes in P4 machine!!! Pls help
[sqlite] sqlite_compile - bad return code
Hello, I am using SQLITE 2.8.13. Until now I had no major problems. My problem is a call to sqlite_compile() with this query: "SELECT * FROM RV WHERE VH=115863566" sqlite_compile returns SQLITE_OK, but *ppVm is NULL and pzErrmsg is "out of memory". I think there are two issues here: 1. Why sqlite_compile() returns SQLITE_OK if the call failed. I found this a little unintuitive, so it's probably a (rare) bug. 2. Why out of memory on my desktop 512 RAM / Win2K / VC7 dll. However this may have to do with platform specific reasons ... Regards, Ionut Filip
RE: [sqlite] sqliteOsEnterMutex() and sqliteOsLeaveMutex()
> Unsolicited advice: Your best bet is to run no more than one thread > in each process. If you need multiple threads, create multiple > processes to contain them. Writing applications with multiple > threads in the same address space is like smoking cigarettes: it > gives you a buzz, but in the long run it is deadly. Just say "no". > > -- > D. Richard Hipp -- [EMAIL PROTECTED] -- 704.948.4565 :) Ionut
RE: [sqlite] SQLite performance with mid-size databases
Hi Richard, Here is a tip to speed up the insert operations: use prepared statements instead of plain INSERTs. If you have to insert more than one record with the same format the performance increase is significant. Transactions also speeds up db operations, there are more detailed topics about this on the list. > The speed results on the website [...] Here I think you need to make sure the concurrency access to the DB is not a bottleneck. Ionut Filip PS: You can also try to post a sample (partial) schema of your database. -Original Message- From: Richard Kuo [mailto:[EMAIL PROTECTED] Sent: Wednesday, June 16, 2004 7:04 AM To: [EMAIL PROTECTED] Subject: [sqlite] SQLite performance with mid-size databases Hi. We are using SQLite to store and retrieve data rows where each row is roughly 2K total in size and in a table of 15 columns. The total size of the database ranges from 100-300 MB. The problem we are seeing is that query and insert performance is unusually bad and scales up linearly with database size. Compared to MS Access, the query times are several times slower. Frankly I was a bit shocked at this considering that most people seem to think the performance is good. However, I don't see anything that we are doing wrong...we query the rows we want only by rowid. I'm very puzzled that this hasn't come up a lot in my searches of the mailing list, but perhaps the slower query times aren't a concern for many of the applications using SQLite. Empirically speaking, we display our data in a scrolling 2 dimensional grid format. With MS access, this grid responds instantaneously when moving through the grid. With SQLite, there is very noticable stalling and lag and the disk i/o is higher than MS Access by roughly a factor of 10. I suppose I am looking to see if anyone is seeing the same results that I am seeing, and wondering if this is known and expected to be the case. The speed results on the website seem way off to me or must be so skewed towards a small dataset that they do not apply in a real world scenario. I would also like to state that I am very impressed with the simplicity of SQLite, which is rare to find these days. It was very easy to get up and running. I'm just having trouble getting past the performance issues. Any explanation would be helpful. Richard Kuo - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: [sqlite] Bulk insert or saving in memory database to file?
Hi, If should also consider using precompiled (prepared) INSERT statements. My tests on Windows (2000 Pro) shows that the pre-compiled insert statements are faster than COPY. But this may not be the case in your situation. Make your own test if it's about 300 M as you told. Ionut Filip -Original Message- From: Shawn Anderson [mailto:[EMAIL PROTECTED] Sent: Friday, May 07, 2004 6:13 PM To: [EMAIL PROTECTED] Subject: [sqlite] Bulk insert or saving in memory database to file? Howdy, I was wondering if anyone had any ideas on either of these options? Basically I have about 300 mb of data that I want to insert in a database using SQLite, and I am trying to find the most efficient way of doing it. My thoughts are either to find a fast bulk insert method, or maybe using an in memory database and then write it out at once to disk. Thoughts and suggestions are more than welcome. BTW, I am doing this on the windows platform if that matters. Thanks Shawn - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[sqlite] How to compile on Borland C++ Compiler 5.5 ?
Hello, I am interested to compile the sqlite.dll using Borland C++ Compiler. Can anyone tell me how to do this ? The http://www.sqlite.org/cvstrac/wiki?p=HowToCompile document covers only building with C++Builder, which is not free. Thanks, Ionut - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]