<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
To be sure, we understand each others, here is the few lines of SQL
I am using:<br>
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<a
href="https://github.com/3nids/qWat/blob/7bc65b5a43ffb9ae5947ede683ff1f2274807972/sql/topology.sql">https://github.com/3nids/qWat/blob/7bc65b5a43ffb9ae5947ede683ff1f2274807972/sql/topology.sql</a><br>
<br>
I know I have errors in topology in my pipes. So, is this correct
than I can use toTopoGeom for geometries that have incorrect
topology?<br>
Or should I check them first?<br>
<br>
Here is the result of validate topology when a part of my pipes is
in the topology column:<br>
SELECT topology.ValidateTopology('distrib_topo');<br>
validatetopology <br>
---------------------------<br>
("face without edges",0,)<br>
(1 row)<br>
<br>
<br>
I can dump the db, this will be a few megas, but I would like to be
sure I am not doing anything stupid, first....<br>
<br>
<br>
<br>
<br>
On 02/24/2012 12:35 PM, Sandro Santilli wrote:
<blockquote cite="mid:20120224113515.GB7722@gnash" type="cite">
<pre wrap="">On Fri, Feb 24, 2012 at 12:03:10PM +0100, Denis Rouzaud wrote:
</pre>
<blockquote type="cite">
<pre wrap="">Okay,
So I am looping over my 25000 pipes and soon as there is a topology
error, the
UPDATE distribution.pipes SET topogeom = toTopoGeom(wkb_geometry,
''distrib_topo'', layer) WHERE id = pi.id;
throws an error:
ERROR: SQL/MM Spatial exception - point not on edge
</pre>
</blockquote>
<pre wrap="">
Excellent. So a _single_ geometry is enough to reproduce the error.
Save both the new geometry (WHERE id = pi.id) and the topology
status (dump the schema).
If you can, attach the dump and the new input into a ticket.
May be worth checking the topology built so far for correctness
with ValidateTopology. Any invalidity would be a bug in PostGIS.
But not all invalidities are cought by ValidateTopology so there
may be a need to do more eyebased checking (linking isn't checked).
Usually the invalidity, if any, is within the bounding box
of the geometry that fails being installed.
</pre>
<blockquote type="cite">
<pre wrap="">I would like to list all the errors by raising the ids, what is the
exception to catch?
</pre>
</blockquote>
<pre wrap="">
A loop _outside_ the database wouldn't need to catch.
If you're looping inside, with pl/pgsql, catch OTHERS.
--strk;
,------o-.
| __/ | Delivering high quality PostGIS 2.0 !
| / 2.0 | <a class="moz-txt-link-freetext" href="http://strk.keybit.net">http://strk.keybit.net</a> - <a class="moz-txt-link-freetext" href="http://vizzuality.com">http://vizzuality.com</a>
`-o------'
_______________________________________________
postgis-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:postgis-users@postgis.refractions.net">postgis-users@postgis.refractions.net</a>
<a class="moz-txt-link-freetext" href="http://postgis.refractions.net/mailman/listinfo/postgis-users">http://postgis.refractions.net/mailman/listinfo/postgis-users</a>
</pre>
</blockquote>
</body>
</html>