Re: [sqlite] unable to use function MATCH in the requested context

2014-01-04 Thread Dan Kennedy

On 01/04/2014 03:23 PM, E. Timothy Uy wrote:

This is a class of problems I started seeing around 3.8.x. Any insights
would be much appreciated. Sometimes it happens when there are more than a
few INNER JOINS, others, in the case, happen when I ORDER BY the virtual
table's docid. I feel like this used to work.

SQLite version 3.8.2 2013-12-06 14:53:30

Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> CREATE VIRTUAL TABLE Terms USING fts3 (term)
...> ;
sqlite> INSERT INTO Terms VALUES ('hello tim');
sqlite> INSERT INTO Terms VALUES ('goodbye tim');
sqlite> CREATE TEMP TABLE Combos (combo);
sqlite> INSERT INTO Combos VALUES ('hello');
sqlite> SELECT * FROM Terms t INNER JOIN Combos c ON t.term MATCH c.combo;
hello tim|hello
sqlite> SELECT * FROM Terms t INNER JOIN Combos c ON t.term MATCH c.combo
ORDER BY t.docid;
Error: unable to use function MATCH in the requested context
sqlite>


I know ordering by t.docid is probably redundant, but it is an example of
the issue I'm encountering. This is an issue in 3.8.0 also. The last time
it worked was 3.7.17


Thanks for reporting this. Now fixed here:

  http://www.sqlite.org/src/info/fa8be488a3

Dan.

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


[sqlite] unable to use function MATCH in the requested context

2014-01-04 Thread E. Timothy Uy
This is a class of problems I started seeing around 3.8.x. Any insights
would be much appreciated. Sometimes it happens when there are more than a
few INNER JOINS, others, in the case, happen when I ORDER BY the virtual
table's docid. I feel like this used to work.

SQLite version 3.8.2 2013-12-06 14:53:30
> Enter ".help" for instructions
> Enter SQL statements terminated with a ";"
> sqlite> CREATE VIRTUAL TABLE Terms USING fts3 (term)
>...> ;
> sqlite> INSERT INTO Terms VALUES ('hello tim');
> sqlite> INSERT INTO Terms VALUES ('goodbye tim');
> sqlite> CREATE TEMP TABLE Combos (combo);
> sqlite> INSERT INTO Combos VALUES ('hello');
> sqlite> SELECT * FROM Terms t INNER JOIN Combos c ON t.term MATCH c.combo;
> hello tim|hello
> sqlite> SELECT * FROM Terms t INNER JOIN Combos c ON t.term MATCH c.combo
> ORDER BY t.docid;
> Error: unable to use function MATCH in the requested context
> sqlite>


I know ordering by t.docid is probably redundant, but it is an example of
the issue I'm encountering. This is an issue in 3.8.0 also. The last time
it worked was 3.7.17

SQLite version 3.7.17 2013-05-20 00:56:22
> Enter ".help" for instructions
> Enter SQL statements terminated with a ";"
> sqlite> CREATE VIRTUAL TABLE Terms USING fts3 (term)
>...> ;
> sqlite> INSERT INTO Terms VALUES ('hello tim');
> sqlite> INSERT INTO Terms VALUES ('goodbye tim');
> sqlite> CREATE TEMP TABLE Combos (combo);
> sqlite> INSERT INTO Combos VALUES ('hello');
> sqlite> SELECT * FROM Terms t INNER JOIN Combos c ON t.term MATCH c.combo;
> hello tim|hello
> sqlite> SELECT * FROM Terms t INNER JOIN Combos c ON t.term MATCH c.combo
> ORDER
> BY t.docid;
> hello tim|hello
> sqlite>
___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users