SQLite

View Ticket
Login
2009-09-03
01:26 Fixed ticket [2ea2425d]: Assertion fault: Text encoding mismatch on value comparison plus 3 other changes (artifact: f0bfe8a8 user: drh)
01:18
Do not reuse function parameters in subsequent expressions since the function call might have triggered a text encoding change. Fix for ticket [2ea2425d34be]. (check-in: f22e3887 user: drh tags: trunk)
00:53 New ticket [2ea2425d] Assertion fault: Text encoding mismatch on value comparison. (artifact: f4234de9 user: drh)

Ticket Hash: 2ea2425d34bee9668ea8055016fed56aa5e773f8
Title: Assertion fault: Text encoding mismatch on value comparison
Status: Fixed Type: Code_Defect
Severity: Critical Priority: Immediate
Subsystem: Code_Generator Resolution: Fixed
Last Modified: 2009-09-03 01:26:42
Version Found In: 3.6.17
Description:
The following SQL when run into an sqlite3 command-line shell (that is compiled with assert() enabled) will generate an assertion fault:
  PRAGMA encoding=UTF16;
  CREATE TABLE t1(a,b); 
  INSERT INTO t1 VALUES('abc',1);
  SELECT 1 FROM t1
   WHERE length(a) <= 10
     AND a <> 'xyz';

The problem appears to have been introduced with version 3.5.8. The problem was discovered by Firefox developers as their bug number 514291.


drh added on 2009-09-03 01:26:42:
Problem introduced by check-in [91cc646e2b0c1d] on 2008-04-01. Fixed by check-in [f22e388727f0] on 2009-09-03.