[OSM-dev] Osmosis error while cutting out a special region from a planet file
Brett Henderson
brett at bretth.com
Sun Aug 30 23:12:01 BST 2009
Hi Frank,
I've had a look at the failing line of code and believe it's been caused
by a java collection not being initialised properly.
It looks like you're using the --tee task. All data gets made read-only
by the --tee task and this uses the UnmodifiableTagCollection class. It
also looks like you're using the completeWays or completeRelations
option on the --bounding-box task. Is that correct? If so it triggers
some serialisation logic so data can be written to temporary files. A
combination of read-only data and serialisation appears to be triggering
the problem.
I've checked in a change which should fix the problem but I haven't
tested it. It will be available in the next nightly build.
http://dev.openstreetmap.org/~bretth/osmosis-build/
For future reference, please provide the full osmosis command line
you're using. It makes it easier to diagnose the problem.
Brett
Frank Bielig wrote:
> Hallo,
>
> I use Osmosis for cutting out a special region by out of the planet
> file by giving a bounding box. Sometimes I get following exception
> after many hours of conversion:
>
>
> SCHWERWIEGEND: Thread for task 1-read-xml
> failed
>
> java.lang.NullPointerException
>
> at
> org.openstreetmap.osmosis.core.domain.v0_6.UnmodifiableTagCollection.store(UnmodifiableTagCollection.java:38)
>
> at
> org.openstreetmap.osmosis.core.domain.v0_6.CommonEntityData.store(CommonEntityData.java:198)
>
> at
> org.openstreetmap.osmosis.core.domain.v0_6.Entity.store(Entity.java:138)
>
> at
> org.openstreetmap.osmosis.core.domain.v0_6.Relation.store(Relation.java:184)
>
> at
> org.openstreetmap.osmosis.core.container.v0_6.RelationContainer.store(RelationContainer.java:51)
>
> at
> org.openstreetmap.osmosis.core.store.BaseObjectWriter.writeObject(BaseObjectWriter.java:63)
>
> at
> org.openstreetmap.osmosis.core.store.SimpleObjectStore.add(SimpleObjectStore.java:106)
>
> at
> org.openstreetmap.osmosis.core.filter.v0_6.AreaFilter.process(AreaFilter.java:242)
>
> at
> org.openstreetmap.osmosis.core.container.v0_6.RelationContainer.process(RelationContainer.java:60)
>
> at
> org.openstreetmap.osmosis.core.filter.v0_6.AreaFilter.process(AreaFilter.java:96)
>
> at
> org.openstreetmap.osmosis.core.tee.v0_6.EntityTee$ProxySinkSource.process(EntityTee.java:124)
>
> at
> org.openstreetmap.osmosis.core.tee.v0_6.EntityTee.process(EntityTee.java:70)
>
> at
> org.openstreetmap.osmosis.core.xml.v0_6.impl.RelationElementProcessor.end(RelationElementProcessor.java:108)
>
> at
> org.openstreetmap.osmosis.core.xml.v0_6.impl.OsmHandler.endElement(OsmHandler.java:108)
>
> at
> org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown
> Source)
>
> at
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown
> Source)
>
> at
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
> Source)
>
> at
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
> Source)
>
> at org.apache.xerces.parsers.XML11Configuration.parse(Unknown
> Source)
>
> at org.apache.xerces.parsers.XML11Configuration.parse(Unknown
> Source)
>
> at org.apache.xerces.parsers.XMLParser.parse(Unknown
> Source)
>
> at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown
> Source)
>
> at
> org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown
> Source)
>
> at org.apache.xerces.jaxp.SAXParserImpl.parse(Unknown
> Source)
>
> at
> javax.xml.parsers.SAXParser.parse(SAXParser.java:198)
>
> at
> org.openstreetmap.osmosis.core.xml.v0_6.XmlReader.run(XmlReader.java:108)
>
> at
> java.lang.Thread.run(Thread.java:619)
>
> 30.08.2009 10:39:37 org.openstreetmap.osmosis.core.Osmosis
> main
>
> SCHWERWIEGEND: Execution
> aborted.
>
> org.openstreetmap.osmosis.core.OsmosisRuntimeException: One or more
> tasks
> failed.
>
> at
> org.openstreetmap.osmosis.core.pipeline.common.Pipeline.waitForCompletion(Pipeline.java:146)
>
> at
> org.openstreetmap.osmosis.core.Osmosis.run(Osmosis.java:85)
>
> at
> org.openstreetmap.osmosis.core.Osmosis.main(Osmosis.java:30)
>
> Does anybody has a hint to solve this problem? Could osmosis changed,
> that all open writing tasks cleanly closed in case of internal errors?
> Then results will be not complete but you get still valid output.
>
> Thank you for your help
> Frank
>
> --
> Frank Bielig Tel: +49 33398 687848
> OneStepAhead AG Fax: +49 33398 687849
> Research & Development Mobil: +49 177 3339868
> Leuschnerstr. 45 eMail: Frank.Bielig at OneStepAhead.de
> D-70176 Stuttgart Web: http://www.OneStepAhead.de
>
> Firma: OneStepAhead AG
> Firmensitz/Amtsgericht: Stuttgart, HRB 22686
> Vorstand/Vorsitzender: Nihat Kücük
> Aufsichtsratvorsitzender: Prof. Dr. Reinhold von Schwerin
> ------------------------------------------------------------------------
>
> _______________________________________________
> dev mailing list
> dev at openstreetmap.org
> http://lists.openstreetmap.org/listinfo/dev
>
More information about the dev
mailing list