[mapserver-dev] One more decision related to 7.0/RFC 91...

Lime, Steve D (MNIT) Steve.Lime at state.mn.us
Wed Sep 24 06:31:20 PDT 2014


So, when you get into implementation of an RFC you notice things. One thing that has come up is ambiguity around the way native SQL is specified. In older versions of MapServer  you'd set FILTER with a string value and the underlying driver would interpret that as SQL. Easy enough at first glance. RFC 91 aims to enable translation from MapServer expression syntax to native SQL plus handling FILTER merging with query operations. That's where the ambiguity sets in - it's not clear how you define native SQL, even the codebase handled it differently.

That ticket aims talks about ways to resolve this ambiguity and you can see the full discussion here:  https://github.com/mapserver/mapserver/issues/5001.  Ultimately we arrived at a point where we needed to bring the discussion back to the list.

Here's a summary of potential options:


1.       Do nothing, live with the ambiguity and resulting code complexity.

2.       Adopt the current OGR method of prefixing the FILTER string with "WHERE ".

3.       Adopt a new delimiter (e.g. <>) to explicitly define native SQL.

4.       Remove the ability to set native SQL altogether - FILTERs would use MapServer expression syntax only and we rely on translations.

Option 4 sounds drastic but probably gets us the most streamlined code to maintain - merging is much more straight forward. The native SQL in FILTER functionality was added long ago before more complex DATA handling was implemented. It's easy to argue that since all of the drivers that support some sort of SQL do so in the DATA definition that there's no need for native SQL FILTERs at all.

Why now? We'll we only want to break things at major releases so...

Steve

StEVE LIME  | DATA & Applications MANAGER
MN.IT Services @ MnDNR
651-259-5473 (w)  |  651-297-4946 (f) |  steve.lime at state.mn.us<mailto:Your.name at state.mn.us>

[cid:image001.jpg at 01CFD7D1.EA74E5E0]<http://www.mn.gov/oet>

Information Technology for Minnesota Government   |   mn.gov/oet<http://www.mn.gov/oet>



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/mapserver-dev/attachments/20140924/656fbc62/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.jpg
Type: image/jpeg
Size: 1611 bytes
Desc: image001.jpg
URL: <http://lists.osgeo.org/pipermail/mapserver-dev/attachments/20140924/656fbc62/attachment.jpg>


More information about the mapserver-dev mailing list