SQLite

View Ticket
Login
2010-01-21
23:13 Fixed ticket [1258875e07]: Undefined collating sequence on LIKE causes segfault plus 3 other changes (artifact: 69302bfe88 user: drh)
23:11
Fix a segfault that can occur when the LHS of a LIKE operator has an undefined collating sequence. Ticket [1258875e07553]. (check-in: a82e6b4585 user: drh tags: trunk)
23:05 New ticket [1258875e07] Undefined collating sequence on LIKE causes segfault. (artifact: 6477f5ee07 user: drh)

Ticket Hash: 1258875e07553c989030934c1125afdf5c79e99b
Title: Undefined collating sequence on LIKE causes segfault
Status: Fixed Type: Code_Defect
Severity: Important Priority: Immediate
Subsystem: Unknown Resolution: Fixed
Last Modified: 2010-01-21 23:13:44
15.45 years ago
Created: 2010-01-21 23:05:32
15.45 years ago
Version Found In:
Description:
Suppose a table is created with a application-defined collating sequence:
    CREATE TABLE t1(x TEXT COLLATE appdef);

Then the same database is opened in a separate database connection where the "appdef" collating sequence is undefined. Then the column is used as the left-hand side of a LIKE operator:

    SELECT * FROM t1 WHERE x LIKE 'abc%';

This causes a segfault.

The problem appears to have been introduced by check-in [9854ad00aed08793ae7ba3c2cfbab7a2dba4dcb8] on 2009-10-22 which was part of release 3.6.20.


drh added on 2010-01-21 23:13:44:
Fixed by check-in [a82e6b4585b9ddba581204976cd5ea8704339185]. The test case is in TH3.