On Jul 19, 2008, at 1:50 AM, Ralf Junker wrote:

> I am running the rtree module against an SQLite build which has  
> lots of functionality SQLITE_OMIT_...ed.

Can you be more specific? Exactly which SQLITE_OMIT symbols
are defined?

> Surprisingly, I receive strange errors like SQLITE_NOMEM for simple  
> statements like
>
>   CREATE VIRTUAL TABLE t6 USING rtree(ii, x1, x2);
>
> or
>
>   SELECT ii FROM t6 WHERE x1>2;
>
> Question: Does the rtree module rely on some SQLite functionality  
> which I might have omitted?
>
> I notice that rtree uses ALTER TABLE without checking for  
> SQLITE_OMIT_ALTERTABLE. Even though this is not causing me problems  
> right now, it might help to exclude alter table functionality from  
> rtree.c conditinally or issue an appropriate error when called.
>
> Btw, ALTER TABLE also applies to FTS3. Is this worth an extra  
> thread or even a ticket?

Rtree uses ALTER TABLE as part of the xRename() callback. The
xRename() callback is invoked when the sqlite user does an
ALTER TABLE. So, the rtree code that uses ALTER TABLE will
never be invoked when the module is being used by an sqlite
build that does not support ALTER TABLE. I suspect the same
is true of fts3.

It looks like there are a few extra lines of code that could
be omitted from the build when SQLITE_OMIT_ALTERTABLE is
defined though.

Dan.

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

Reply via email to