Re: [sqlite] WAL and updates

2012-11-27 Thread Keith Chew
> Thanks for this Simon, but unfortunately this is legacy code, which has to > be used for a while. I just did an update to check for column change (we > have a column to tell us the record has changed, so we do not need to check > every column), and the WAL file size growth has dropped significant

Re: [sqlite] DB change notification hooks across process

2012-11-27 Thread Dominguez Bonini, David
> What is the preferred way of receiving change notifications from > the SQLite connection ? Just in case it helps, we also had this problem in an embedded system where constant polling of sqlite tables was expensive and what we did is: Add a directory in /tmp which every process connected to sq

Re: [sqlite] Replace on fts4 table results in unexpected matchinfo result

2012-11-27 Thread Dan Kennedy
On 11/27/2012 11:42 AM, Eric wrote: The following SQL results in X'01000600'. For reference, "na" option should generate total number of documents and the average number of tokens per document. CREATE VIRTUAL TABLE IF NOT EXISTS fts USING fts4(body); REPLACE INTO fts ( docid, body ) VALU

Re: [sqlite] Replace on fts4 table results in unexpected matchinfo result

2012-11-27 Thread Black, Michael (IS)
Does this make it weirder or what? If you do the replace after the insert you get the expected result. But if you do the replace, followed by 2 more inserts you get this: SQLite version 3.7.14.1 2012-10-04 19:37:12 Enter ".help" for instructions Enter SQL statements terminated with a ";" sqlite>

Re: [sqlite] Matchinfo slows down query

2012-11-27 Thread Joost Voogt
I did some profiling with gprof to see why the query which does an extra ordering on descending docid is (surprisingly) 100 times faster than the normal query. As you can see in the results below is that the functions fts3PoslistCopy and sqlite3Fts3GetVarint get called over more than 400 million ti

[sqlite] Replace on fts4 table results in unexpected matchinfo result

2012-11-27 Thread Eric
The following SQL results in X'01000600'. For reference, "na" option should generate total number of documents and the average number of tokens per document. CREATE VIRTUAL TABLE IF NOT EXISTS fts USING fts4(body); REPLACE INTO fts ( docid, body ) VALUES (1, "one two three four"); REPLACE