If you do:

<raw>select rowid, name from filesfts where filesfts match '"upload 
file漢_5"*';</raw>

you get back:

<raw>
141| upload file漢_5
142| upload file漢_6
152| upload file漢_5
153| upload file漢_6
163| upload file漢_5
164| upload file漢_6
174| upload file漢_5
175| upload file漢_6
185| upload file漢_5
196| upload file漢_5
207| upload file漢_5
218| upload file漢_5
229| upload file漢_5
240| upload file漢_5
</raw>

and then if you run:

<raw>INSERT INTO FilesFTS(FilesFTS, rank) VALUES('merge', -1);</raw>

and the select again, you get:

<raw>
141| upload file漢_5
152| upload file漢_5
163| upload file漢_5
174| upload file漢_5
185| upload file漢_5
196| upload file漢_5
207| upload file漢_5
218| upload file漢_5
229| upload file漢_5
240| upload file漢_5
</raw>

I'm using:
sqlite> .version
SQLite 3.15.2 2016-11-28 19:13:37 bbd85d235f7037c6a033a9690534391ffeacecc8

But i've confirmed it also happens on 3.17.0 and 3.18.0


________________________________
From: Jonathan Gaillard <jonathan.gaill...@live.com>
Sent: Monday, April 17, 2017 12:00:09 PM
To: sqlite-users@mailinglists.sqlite.org
Subject: FTS5 query results different before/after MERGE command.


I have a db where I have a query returning results from something I believe is 
deleted already from a FTS5 table. This is a normal FTS5 table, not a 
contentless one so I used the normal DELETE.


Only after I run:

INSERT INTO MyFTSTable(MyFTSTable, rank) VALUES('automerge', 0);


INSERT INTO MyFTSTable(MyFTSTable, rank) VALUES('merge', 500);

Does the query then start returning the results without the deleted items.

Is this normal fts behavior?

Thanks!!
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to