[fdo-trac] #367: Eliminate nested filter SQL statements if nesting is not required

FDO trac_fdo at osgeo.org
Tue Aug 5 14:18:50 EDT 2008


#367: Eliminate nested filter SQL statements if nesting is not required
--------------------------------+-------------------------------------------
   Reporter:  thomasknoell      |       Owner:  gregboone
       Type:  defect            |      Status:  new      
   Priority:  major             |   Milestone:           
  Component:  GenericRdbms API  |     Version:  3.2.0    
   Severity:  3                 |    Keywords:           
External_id:                    |  
--------------------------------+-------------------------------------------
 For RDBMS systems, the process transferring a filter into a SQL statement
 creates many nested levels if the filter contains binary logical
 operations. The nesting is done in any case although not always required.
 For example, a filter stating id = 1 or id = 2 or id = 3 or id = 4 should
 not produce the SQL statement ((((id = 1) or (id = 2)) or (id = 3)) or (id
 = 4)) but rather (id = 1) or (id = 2) or (id = 3) or (id = 4). In some
 RDBMS systems - like ODBC - nesting may also result in a failure when a
 command with such a filter is executed due to system limitations (ODBC can
 only handle up to 26 levels of nesting).

-- 
Ticket URL: <http://trac.osgeo.org/fdo/ticket/367>
FDO <http://fdo.osgeo.org/>
Feature Data Objects


More information about the fdo-trac mailing list