[fdo-trac] #795: FdoExpressionEngineImp::Like should return false on mismatched data types

FDO trac_fdo at osgeo.org
Wed Oct 19 21:21:39 EDT 2011


#795: FdoExpressionEngineImp::Like should return false on mismatched data types
-----------------------+----------------------------------------------------
   Reporter:  jng      |       Owner:  gregboone
       Type:  defect   |      Status:  new      
   Priority:  major    |   Milestone:  3.7.0    
  Component:  FDO API  |     Version:           
   Severity:  3        |    Keywords:           
External_id:           |  
-----------------------+----------------------------------------------------
 I was performance testing some MapGuide feature joins when I encountered a
 cryptic "Fetching a property value did not match the property type" error.

 Some extensive debugging revealed that the error was caused by MapGuide
 instructing FDO to do a LIKE evaluation against an integer and a string.

 In the current implementation of FdoExpressionEngineImp::Like, mismatched
 data types (ie. left or right arguments are not string property values)
 will result in an exception being thrown.

 Given MapGuide is lenient on what types of properties can be joined,
 shouldn't the FDO expression engine just return false on mismatched data
 types instead of throwing an exception? It's clear the LIKE condition in
 such cases will not evaluate to true, so why not just return false?

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


More information about the fdo-trac mailing list