<div dir="ltr">I don't know what's in you table , but your result may be very big<div><br></div><div>numberofresult = numberof(<span style="font-family:sans-serif">province</span><span style="font-family:sans-serif"> ) * numberof(</span><span style="font-family:sans-serif">potentialite_tmp</span><span style="font-family:sans-serif"> </span><span style="font-family:sans-serif">)</span></div>
<div><span style="font-family:sans-serif"><br></span></div><div><br></div><div><span style="font-family:sans-serif"><br></span></div><div><font face="sans-serif">You can manually test this by using WITH statement with limits :</font></div>
<div><font face="sans-serif"><br></font></div><div><font face="sans-serif">WITH province AS (</font></div><div><font face="sans-serif">SELECT *</font></div><div><font face="sans-serif">FROM province</font></div><div><font face="sans-serif">LIMIT 2),</font></div>
<div><span style="font-family:sans-serif">potentialite_tmp</span><span style="font-family:sans-serif">  AS (</span><font face="sans-serif"><br></font></div><div><span style="font-family:sans-serif">SELECT *</span></div><div>
<span style="font-family:sans-serif">FROM </span><span style="font-family:sans-serif">potentialite_tmp</span><span style="font-family:sans-serif"> </span></div><div><span style="font-family:sans-serif">LIMIT 2)</span></div>
<div><font face="sans-serif" style="font-size:12.800000190734863px">SELECT  id, gridcode, ST_Difference(a.geom32198_s,b.geom32198_s) as geom32198_s</font><span style="font-family:arial,sans-serif;font-size:12.800000190734863px"> </span><br style="font-family:arial,sans-serif;font-size:12.800000190734863px">
<font face="sans-serif" style="font-size:12.800000190734863px">FROM province as a, potentialite_tmp as b;</font><span style="font-family:arial,sans-serif;font-size:12.800000190734863px"> </span><span style="font-family:sans-serif"><br>
</span></div><div><span style="font-family:arial,sans-serif;font-size:12.800000190734863px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:12.800000190734863px">And based on your "into", I guess this is executed inside a plpgsql function.</span></div>
<div><span style="font-family:arial,sans-serif;font-size:12.800000190734863px">You should first try it directly in pgadmin, because in a plpgsql function the result will be cached and it could be the bottlneck (I'm not an expert)</span></div>
<div><span style="font-family:arial,sans-serif;font-size:12.800000190734863px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:12.800000190734863px">Cheers,</span></div><div><span style="font-family:arial,sans-serif;font-size:12.800000190734863px"><br>
</span></div><div><span style="font-family:arial,sans-serif;font-size:12.800000190734863px">Rémi-C</span></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2013/11/28  <span dir="ltr"><<a href="mailto:Steve.Toutant@inspq.qc.ca" target="_blank">Steve.Toutant@inspq.qc.ca</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br><font face="sans-serif">Hi,</font>
<br><font face="sans-serif">This query didn't endup after 4 hours....and
eat 40gig of disk space</font>
<br><font face="sans-serif">SELECT  id, gridcode, ST_Difference(a.geom32198_s,b.geom32198_s)
as geom32198_s</font>
<br><font face="sans-serif">into potentialite </font>
<br><font face="sans-serif">FROM province as a, potentialite_tmp
as b;</font>
<br>
<br><font face="sans-serif">I stopped the execution and cancel request
sent appears, but after an hour the request wasn't stopped yet.</font>
<br><font face="sans-serif">So I killed the process and restat postgres.</font>
<br>
<br><font face="sans-serif">The database is up and running but I
didn't get the 40gig of disk space back. And only 5gig remains on the server</font>
<br>
<br><font face="sans-serif">It is this table that is so huge</font>
<br><font face="sans-serif">pg_toast.pg_toast_11037520</font>
<br>
<br><font face="sans-serif">I tried with vaccuumdb without success.
Vacuumdb full didn't work because only 5 gig left on the server</font>
<br><font face="sans-serif">1-</font>
<br><font face="sans-serif">What can I do to get back the disk space?
Can I simply drop pg_toast.pg_toast_11037520?</font>
<br>
<br><font face="sans-serif">2-</font>
<br><font face="sans-serif">Both tables have gist index, any idea
why it takes so long to execute and why this query is so "heavy"
for postgis?</font>
<br>
<br><font face="sans-serif">thanks in advance for your help</font>
<br><font face="sans-serif">Steve</font>
<br>
<p></p><br>_______________________________________________<br>
postgis-users mailing list<br>
<a href="mailto:postgis-users@lists.osgeo.org">postgis-users@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users" target="_blank">http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users</a><br></blockquote></div><br></div>