This is a known limitation of Osmosis bounding box processing.<br><br>When you perform a bounding box extract, if nodes lie outside the bounding box, but are referenced by ways inside the bounding box they will not be included in the file.  This is due to the way Osmosis processing works because it finishes processing nodes before it sees the ways.<br>
<br>You have several options here:<br>1. Drop the constraint from the database.  This might lead to other issues.<br>2. Add the clipIncompleteEntities=true option to the --bounding-box task.  This will modify the ways so that they no longer reference the problematic ways.  Obviously they will no longer be identical to the original ways from the input planet file.<br>
3. Add the completeWays=true option to the --bounding-box task.  This will include the missing nodes, but will slow down processing enormously.<br><br><div class="gmail_quote">On Thu, Feb 17, 2011 at 12:07 AM, Egoitz Ormaetxea <span dir="ltr"><<a href="mailto:egoitz.ormaetxea@gmail.com">egoitz.ormaetxea@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><br>- Downloaded planet file planet-110202.osm.bz2<br>- Extracted a osm for the zone 43.5N -3.5W | 42N -1W with osmosis : <br>
bzcat planet-101027.osm.bz2 | osmosis --read-xml file=/dev/stdin enableDateParsing=no --bounding-box top=43.5 left=-3.5 bottom=42 right=-1 --write-xml file=- | bzip2 > extracted.osm.bz2<br>
It takes 2 hours to complete but it finishes with no errors.<br><br>- Clear the API DB : <br>dropdb openstreetmap<br>createdb -E UTF8 -O openstreetmap openstreetmap<br>dropdb osm_test<br>createdb -E UTF8 -O openstreetmap osm_test<br>

dropdb osm<br>createdb -E UTF8 -O openstreetmap osm<br>psql -d openstreetmap < /usr/share/postgresql/8.4/contrib/btreet_gist.sql<br>rake db:migrate<br>rake test<br><br>- Import extracted osm file to the API DB with osmosis :<br>

bzcat extracted.osm.bz2 | osmosis --read-xml-0.6 file=- --write-apidb-0.6 populateCurrentTables=yes host="localhost" database="openstreetmap" user="openstreetmap" password="xxx" validateSchemaVersion=no<br>

<br>Ends with error :<br><br>org.openstreetmap.osmosis.core.OsmosisRuntimeException: Unable to load current way nodes.<br>...<br>Caused by: org.postgresql.util.PSQLException: ERROR: insert or update on table "current_way_nodes" violates foreign key constraint "current_way_nodes_node_id_fkey"<br>

Detail: Key (node_id)=(490767853) is not present in table "current_nodes"<br>...<br><br>The 'weird' thing is that 490767853 node is out of the bounding box <a href="http://www.openstreetmap.org/browse/node/490767853" target="_blank">http://www.openstreetmap.org/browse/node/490767853</a> : 42.3951781, -3.5017794<a href="http://www.openstreetmap.org/?lat=42.3951781&lon=-3.5017794&zoom=18" target="_blank"><span></span><span></span></a><br>

<br>Am I doing the process to extract+import correctly ? Is there a way to avoid this error ?<br><div style="padding: 0px; margin-left: 0px; margin-top: 0px; overflow: hidden; word-wrap: break-word; color: black; font-size: 10px; text-align: left; line-height: 130%;">

</div>
<br>_______________________________________________<br>
osmosis-dev mailing list<br>
<a href="mailto:osmosis-dev@openstreetmap.org">osmosis-dev@openstreetmap.org</a><br>
<a href="http://lists.openstreetmap.org/listinfo/osmosis-dev" target="_blank">http://lists.openstreetmap.org/listinfo/osmosis-dev</a><br>
<br></blockquote></div><br>