<div dir="ltr"><div class="gmail_default" style="font-family:monospace,monospace">Paul committed a (supposed) fix.<br></div><div class="gmail_default" style="font-family:monospace,monospace">I updated my postgis, <br></div><div class="gmail_default" style="font-family:monospace,monospace">and will use this new version to see if the bug happens again.<br></div><div class="gmail_default" style="font-family:monospace,monospace">Many thanks for the super-fast fix ! <br>Cheers,<br></div><div class="gmail_default" style="font-family:monospace,monospace">Rémi-C<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2015-06-01 16:18 GMT+02:00 Rémi Cura <span dir="ltr"><<a href="mailto:remi.cura@gmail.com" target="_blank">remi.cura@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_default" style="font-family:monospace,monospace">Data in the ticket.<br></div><div class="gmail_default" style="font-family:monospace,monospace">I dropped the topology and recreated it, no more issues.<br></div><div class="gmail_default" style="font-family:monospace,monospace">Note that I was able to do it because it was a toy database, <br></div><div class="gmail_default" style="font-family:monospace,monospace">I would have been stuck if seriously using it.<br><br></div><div class="gmail_default" style="font-family:monospace,monospace">Maybe it has something to do with lot of transaction cancelling (when I debug, I raise a lot of exceptions ).<br></div><div class="gmail_default" style="font-family:monospace,monospace"><br></div><div class="gmail_default" style="font-family:monospace,monospace">As for the safeguard,<br></div><div class="gmail_default" style="font-family:monospace,monospace">it is necessary not safe. <br></div><div class="gmail_default" style="font-family:monospace,monospace"><br></div><div class="gmail_default" style="font-family:monospace,monospace">I'm not an expert, so it's just a guess.<br>Maybe you have to consider<br></div><div class="gmail_default" style="font-family:monospace,monospace"><br>    `Nan > 1` ==> always false , so not safe (your safeguard wouldn't be executed)<br></div><div class="gmail_default" style="font-family:monospace,monospace"><br></div><div class="gmail_default" style="font-family:monospace,monospace">It could be because `ntuples_max` is 0 or NaN. <br></div><div class="gmail_default" style="font-family:monospace,monospace">Then you have `selectivity = val / ntuples_max;`<br></div><div class="gmail_default" style="font-family:monospace,monospace">In my case there is no row to return anyway.<br><br></div><div class="gmail_default" style="font-family:monospace,monospace">Maybe you should put selectivity  to `0.5` if NaN or Infinity?<br></div><div class="gmail_default" style="font-family:monospace,monospace"><br><br></div><div class="gmail_default" style="font-family:monospace,monospace">Cheers,<br></div><div class="gmail_default" style="font-family:monospace,monospace">Rémi-C<br></div></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">2015-06-01 15:52 GMT+02:00 Paul Ramsey <span dir="ltr"><<a href="mailto:pramsey@cleverelephant.ca" target="_blank">pramsey@cleverelephant.ca</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Because by inspection, I don't see how anything gets past this:<br>
<br>
<a href="https://github.com/postgis/postgis/blob/svn-trunk/postgis/gserialized_estimate.c#L1094-L1096" target="_blank">https://github.com/postgis/postgis/blob/svn-trunk/postgis/gserialized_estimate.c#L1094-L1096</a><br>
<div><div><br>
On Mon, Jun 1, 2015 at 6:49 AM, Paul Ramsey <<a href="mailto:pramsey@cleverelephant.ca" target="_blank">pramsey@cleverelephant.ca</a>> wrote:<br>
> Reproduction data?<br>
> P<br>
><br>
><br>
> --<br>
> <a href="http://postgis.net" target="_blank">http://postgis.net</a><br>
> <a href="http://cleverelephant.ca" target="_blank">http://cleverelephant.ca</a><br>
><br>
><br>
> On June 1, 2015 at 6:47:27 AM, Rémi Cura (<a href="mailto:remi.cura@gmail.com" target="_blank">remi.cura@gmail.com</a>) wrote:<br>
>> Hey,<br>
>> I re-opened the ticket [here](<br>
>> <a href="http://trac.osgeo.org/postgis/ticket/2543#comment:21" target="_blank">http://trac.osgeo.org/postgis/ticket/2543#comment:21</a>).<br>
>><br>
>> This is a major bug (in my opinion).<br>
>><br>
>><br>
>> Simply doing something like<br>
>> ------<br>
>> SELECT *<br>
>> FROM node, face<br>
>> WHERE geom && mbr<br>
>> --------<br>
>><br>
>> raises an error<br>
>> "ERROR: invalid join selectivity:"<br>
>> (answer should be None, tables have one line each! )<br>
>><br>
>> This is pretty terrible, because spatial intersect is at the basis of<br>
>> PostGIS, and it affects classical PostGIS topology tables, so it is not<br>
>> possible to change the tables easily.<br>
>><br>
>> Worse, it affects a pretty recent PostGIS version (POSTGIS="2.2.0dev<br>
>> r12846" GEOS="3.5.0dev-CAPI-1.9.0 r0" PROJ="Rel. 4.8.0, 6 March 2012"<br>
>> GDAL="GDAL 2.0.0dev, released 2014/04/16" LIBXML="2.8.0" TOPOLOGY RASTER),<br>
>> with Postgres 9.3 and Ubuntu 12.04.<br>
>><br>
>> Cheers,<br>
>> Remi-C<br>
>> _______________________________________________<br>
>> postgis-devel mailing list<br>
>> <a href="mailto:postgis-devel@lists.osgeo.org" target="_blank">postgis-devel@lists.osgeo.org</a><br>
>> <a href="http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-devel" target="_blank">http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-devel</a><br>
><br>
</div></div></blockquote></div><br></div>
</div></div></blockquote></div><br></div>