<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.gmail-hoenzb
        {mso-style-name:gmail-hoenzb;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'>Shira,<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'>No clue and haven't looked at the code to see the difference.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'>The only thing I would guess is maybe in 2.0.1 if a pixel was only partially covered by a geometry then it doesn't include the pixel (thus the pixels you may be missing in 2.0.1 are those only partially covered by the geometry)<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'>And in 2.3, maybe it includes it if it's partially covered.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'>I think we had discussions about that and if we needed another argument to denote which behavior should be used.  I forget what was decided if anything.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'>Hope that helps,<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'>Regina<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal style='margin-left:.5in'><b><span style='font-size:11.0pt;font-family:"Calibri",sans-serif'>From:</span></b><span style='font-size:11.0pt;font-family:"Calibri",sans-serif'> postgis-users [mailto:postgis-users-bounces@lists.osgeo.org] <b>On Behalf Of </b>Shira Bezalel<br><b>Sent:</b> Wednesday, January 18, 2017 2:20 PM<br><b>To:</b> PostGIS Users Discussion <postgis-users@lists.osgeo.org><br><b>Subject:</b> Re: [postgis-users] ST_Clip - Different results between PostGIS 2.0.1 and 2.3.1<o:p></o:p></span></p><p class=MsoNormal style='margin-left:.5in'><o:p> </o:p></p><div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'><o:p> </o:p></span></p></div><div><div><p class=MsoNormal style='margin-left:.5in'>On Mon, Jan 9, 2017 at 10:18 AM, Shira Bezalel <<a href="mailto:shira@sfei.org" target="_blank">shira@sfei.org</a>> wrote:<o:p></o:p></p><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in'><div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>Hi there. I'm testing an upgraded database and seeing different results in a query that's using the ST_Clip function. <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>old database: PostgreSQL 9.1.14 with PostGIS 2.0.1<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>new database: PostgreSQL: 9.6.1 with PostGIS 2.3.1<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>I know ST_Clip was rewritten in C in PostGIS 2.1. Could this be responsible for different results? Or did the clipping algorithm change? I consulted the docs, but didn't see anything noted to this effect. <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>Query:<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'><o:p> </o:p></span></p></div><div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>SELECT (pvc).value, SUM((pvc).count) AS total  <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>       FROM ( <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>           SELECT ST_ValueCount(st_clip(rast, c.the_geom),1) AS pvc  <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>           FROM nlcdcal20_2011, counties c<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>           WHERE st_intersects(rast, c.the_geom) and <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>           c.NAME = 'Alameda'  <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>       ) AS foo  <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>       GROUP BY (pvc).value        <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>       order by (pvc).value<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>If I remove the clip, the results are identical.<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>In terms of the actual difference, here's the sum total of all pixels found by this query:<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>Total pixels in 2.0.1 = 2,362,444<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>Total pixels in 2.3.1 = <o:p></o:p></span></p><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>​​<o:p></o:p></span></p></div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>2,418,017</span><o:p></o:p></p></div><div><p class=MsoNormal style='margin-left:.5in'><o:p> </o:p></p></div><div><p class=MsoNormal style='margin-left:.5in'>It's not a huge difference, but enough to be curious about. We can live with it, but it would just be nice to know the cause.<o:p></o:p></p></div><div><p class=MsoNormal style='margin-left:.5in'><o:p> </o:p></p></div><div><p class=MsoNormal style='margin-left:.5in'>Thank you for any insight you can provide.<o:p></o:p></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif;color:#888888'>Shira<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>p.s. The faster performance of the new ST_Clip is awesome! <o:p></o:p></span></p></div></div></div></blockquote><div><p class=MsoNormal style='margin-left:.5in'> <o:p></o:p></p></div></div><p class=MsoNormal style='margin-left:.5in'><o:p> </o:p></p><div><div><div><div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>​Didn't hear back from the list on this, so thought I'd resend. Just looking to know if anyone has run into this, what might be the cause, and maybe most importantly (and ideally), if the new results would be considered more accurate?<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>Thank you,<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Tahoma",sans-serif'>Shira​<o:p></o:p></span></p></div></div></div></div></div></div></div></div></body></html>