Opened 15 years ago
Closed 15 years ago
#558 closed defect (fixed)
SQLite filter processing can output filters that result in sqlite parser stack overflow
Reported by: | traianstanev | Owned by: | romicadascalescu |
---|---|---|---|
Priority: | major | Milestone: | 3.5.0 |
Component: | SQLite Provider | Version: | 3.4.0 |
Severity: | 3 | Keywords: | |
Cc: | External ID: |
Description
The SQLite filter processor converts this:
Below is what we get from FDO when we call ToString
UNIQUEID = 400 OR UNIQUEID = 1789 OR UNIQUEID = 1790 OR UNIQUEID = 1791 OR UNIQUEID = 1792 OR UNIQUEID = 1793 OR ..... to this (notice the nested ()):
(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((UNIQUEID = 400) OR (UNIQUEID = 1789)) OR (UNIQUEID = 1790)) OR (UNIQUEID = 1791)) OR (UNIQUEID = 1792)) OR (UNIQUEID = 1793)) OR (UNIQUEID = 1794)) OR (UNIQUEID = 1795)) OR (UNIQUEID = 1796)) OR (UNIQUEID = 1797)) OR (UNIQUEID = 1798)) OR (UNIQUEID = 1799)) OR (UNIQUEID = 1800)) OR (UNIQUEID = 1801)) OR (UNIQUEID = 1802)) OR (UNIQUEID = 1803)) OR (UNIQUEID = 1804)) OR (UNIQUEID = 1805)) OR (UNIQUEID = 1806)) OR (UNIQUEID = 1807)) OR (UNIQUEID = 1962)) OR (UNIQUEID = 1963)) OR (UNIQUEID = 1966)) OR .....
For large queries, this results in parser stack overflow inside sqlite.
Change History (2)
comment:1 by , 15 years ago
Owner: | changed from | to
---|
comment:2 by , 15 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Romy has a fix for this.