On Aug 19, 2010, at 1:21 AM, Nasron Cheong wrote:

> I'm getting a db error when trying to alter an fts table within a
> transaction.
>
> This only happens if the statement before the alter is an insert.

Thanks for the report. This won't get fixed until after
3.7.1 though. For now, fts3 tables should only renamed
outside of transactions.

Dan.


>
> See below:
>
> D:\temp>sqlite3  tmp.db
> SQLite version 3.6.23.1
> Enter ".help" for instructions
> Enter SQL statements terminated with a ";"
> sqlite> create table NonFts (docid integer, msg string);
> sqlite> create virtual table Fts using fts3(msg);
>
> sqlite> begin;
> sqlite> insert into NonFts(docid,msg) values(1, "bob");
> sqlite> alter table nonfts rename to nonfts2;
> sqlite> commit; //OK
>
> sqlite> begin;
> sqlite> insert into fts(docid,msg) values(1,"bob");
> sqlite> alter table fts rename to fts2;
> sqlite> commit;
> Error: SQL logic error or missing database
> sqlite>
>
> sqlite> begin;
> sqlite> alter table fts rename to fts2;
> sqlite> commit; //OK
>
> Something I should be doing differently?
>
> Thanks
>
> - Nasron Cheong
> _______________________________________________
> 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

Reply via email to