Re: [sqlite] Unexplained minor regression (bug) 3.7.8 up

2011-12-07 Thread Richard Hipp
On Wed, Dec 7, 2011 at 2:48 AM, Max Vlasov  wrote:

>
> btw, could not find exact steps for getting trunk amalgamation.
> Is it :
> - get
> http://www.sqlite.org/src/tarball/sqlite-latest-trunk.tar.gz?uuid=trunk
> - extract on a unix-compatible machine
> - ./configure
> - make sqlite3.c
>

You built the amalgamation correctly.  That's all there is to it.


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


Re: [sqlite] Unexplained minor regression (bug) 3.7.8 up

2011-12-06 Thread Max Vlasov
On Tue, Dec 6, 2011 at 9:49 PM, Dan Kennedy  wrote:

> On 12/06/2011 03:28 PM, Max Vlasov wrote:
>
>> Hi,
>> Noticed a strange regression after 3.7.7 (in 3.7.8 and inherited in 3.7.9)
>>
>>
> There is a candidate fix for this in fossil now.
>
>
Dan, thanks
I checked the latest trunk against my unprepared database and query,
everything is fine.

btw, could not find exact steps for getting trunk amalgamation.
Is it :
- get
http://www.sqlite.org/src/tarball/sqlite-latest-trunk.tar.gz?uuid=trunk
- extract on a unix-compatible machine
- ./configure
- make sqlite3.c

For me it worked, but maybe there are other things to mention.

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


Re: [sqlite] Unexplained minor regression (bug) 3.7.8 up

2011-12-06 Thread Dan Kennedy

On 12/06/2011 03:28 PM, Max Vlasov wrote:

Hi,
Noticed a strange regression after 3.7.7 (in 3.7.8 and inherited in 3.7.9)

I have a Russian morphology database and different queries working with it.
I narrowed it to the following case and populated with a couple of English
words (just to make sense)

The following database

CREATE TABLE [Beginnings] ([Id] INTEGER PRIMARY KEY AUTOINCREMENT,[Title]
TEXT, [EndingId] INTEGER);
CREATE TABLE [Endings] (Id INT,Title TEXT,EndingId INT);
INSERT INTO Beginnings (Id, Title, EndingId) VALUES (1, 'FACTOR', 18);
INSERT INTO Beginnings (Id, Title, EndingId) VALUES (2, 'SWIMM', 18);
INSERT INTO Endings (Id, Title, EndingId) VALUES (1, 'ING', 18);

There's a query that searches for primary form of a united list of some
words (here FACTORING and SWIMMING):

SELECT
   SrcWord, Beginnings.Title
FROM
   (SELECT 'FACTORING' AS SrcWord UNION
SELECT 'SWIMMING' AS SrcWord )
LEFT JOIN
   Beginnings
WHERE
   Beginnings.Id=
(SELECT BeginningId FROM
(SELECT
  SrcWord, B.Id as BeginningId, B.Title || E.Title As Connected
FROM
  Beginnings B
LEFT JOIN
  Endings E
ON
  B.EndingId=E.EndingId
WHERE
  Connected=SrcWord
LIMIT
  1))


There is a candidate fix for this in fossil now.

Alternatively, a workaround with 3.7.9 is to remove the "LIMIT 1"
from the sub-query. Or replace the "LEFT JOIN" in the subquery with
a regular JOIN. The query then seems to work as expected.
___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users