You are not logged in.
- Topics: Active | Unanswered
Announcement
Please create new topics on the new site at community.openstreetmap.org. We expect the migration of data will take a few weeks, you can follow its progress here.***
#1 2013-08-26 21:50:44
- svgt
- Member
- Registered: 2013-08-26
- Posts: 22
Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Hallo,
ich versuche aus osm.pbf Karten solche im Format 0.2.4 zu erzeugen. Das tue ich mit Osmosis 0.40 und Java 1.7. Neuere Versionen von Osmosis bringen mir schwer verständliche Fehler. Beim Erzeugen einer Schweden-Karte bekomme ich am Ende obige Fehlermeldung. Kleinere Karten von kleineren Ländern sind umsetzbar.
Nun habe ich gefunden, dass ich dem Java mehr Speicher zuordnen muss. Das soll gehen mit JAVACMD_OPTIONS=Xmx2G. Dieser Parameter ist in der osmosis.bat Datei einzutragen.
Weiß jemand, an welcher Stelle ich das in dieser Datei wie einfügen soll?
Gruß Svgt
Offline
#2 2013-08-26 21:58:08
- chris66
- Member

- From: Germany
- Registered: 2009-05-24
- Posts: 10,130
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Hi,
meine osmosis.bat fängt so an:
@ECHO OFF
set JAVACMD_OPTIONS=-Xmx1024Mhier kann die Speicherzuweisung erhöht werden. Bei Dir fehlt das Minuszeichen vor dem X.
Chris
Last edited by chris66 (2013-08-26 21:59:28)
Mapper aus dem Münsterland.
Offline
#3 2013-08-27 08:59:49
- brogo
- Member
- From: 54,11 +-1°
- Registered: 2009-06-02
- Posts: 553
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Das tue ich mit Osmosis 0.40 und Java 1.7. Neuere Versionen von Osmosis bringen mir schwer verständliche Fehler. Beim Erzeugen einer Schweden-Karte bekomme ich am Ende obige Fehlermeldung. Kleinere Karten von kleineren Ländern sind umsetzbar.
Bitte nutze auf jeden Fall osmosis 0.43. Die älteren Versionen haben Probleme mit den 64-bittigen-Node-IDs.
Poste doch mal bitte Deine Fehlermeldungen.
Christian
Offline
#4 2013-08-28 08:19:07
- svgt
- Member
- Registered: 2013-08-26
- Posts: 22
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Hallo,
hier für christian die Ausgabe von osmosis 0.43. Meine Umgebung ist ein Windows XP 32bit System mit 2,5GB Ram, Java 1.7.25
Ich habe gerade versucht mit 0.40 eine germany-latest.osm.pbf umzusetzen. Dabei hat er gerade noch gemeldet, dass der Lesevorgang abgeschlossen ist, dann kreiselte er 19 Stunden mit heftigem IO.
Danke an Chris für den javacmd Tipp. Ich habe es jetzt mit 1600MB laufen.
Gruß Svgt
PS: Mit 0.40 - kleinere Länder wie Österreich und Schweiz laufen ohne Fehler durch, Schweden in der gleichen Größenklasse geht nie über 40 % Ausgabe, Deutschland kommt nicht über das Abschließen des Lesens hinaus.
Last edited by svgt (2013-08-28 14:01:58)
Offline
#5 2013-08-28 09:06:41
- wambacher
- Member

- From: Schlangenbad/Wambach, Germany
- Registered: 2009-12-16
- Posts: 16,769
- Website
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Wie füge ich ein Screenshot Bild ein ?
ich lade das bei pic-upload.de hoch - kostet nix, bringt werbung, aber wofür gibt es beta-blocker AD-Blocker?
Vergiss bitte ab sofort alle Versionen < 0.43 - das ist reiner Zufall ob das irgendwo mal klappt. Erst ab 0.43 kann osmosis mit IDs > 2GB umgehen und wir sind inzwischen bei 2.434.902.010 !!!
planet=# select max(id) from nodes;
max
------------
2434902010
(1 row)Gruss
walter
p.s. 19h für Germany ist durchaus ok. solltest mal beobachten ob und wie deine DB größer wird
Last edited by wambacher (2013-08-28 09:07:22)
Offline
#6 2013-08-28 18:39:08
- svgt
- Member
- Registered: 2013-08-26
- Posts: 22
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Hallo,
ich bedanke mich für die vielen Tipps nach kurzer Zeit. Ich habe nun Osmosis 0.43.1 unter Linux installiert. Ich benutze vorläufig OpenJDK. Beim Versuch zum Karten erzeugen, bekomme ich folgende Meldungen:
hans@hans-ESPRIMO-E5905 ~/osmosis $ bin/osmosis -plugin org.mapsforge.preprocessing.map.osmosis.MapFileWriterPluginLoader --rb file=andorra-latest.osm.pbf --mapfile-writer file=andorra-0.2.4.map type=hd
Aug 28, 2013 7:30:20 PM org.openstreetmap.osmosis.core.Osmosis run
INFO: Osmosis Version 0.43.1
Aug 28, 2013 7:30:21 PM org.java.plugin.registry.xml.ManifestParser <init>
INFO: got SAX parser factory - org.apache.xerces.jaxp.SAXParserFactoryImpl@fbd1fc
Aug 28, 2013 7:30:21 PM org.java.plugin.registry.xml.PluginRegistryImpl configure
INFO: configured, stopOnError=false, isValidating=true
Aug 28, 2013 7:30:21 PM org.java.plugin.registry.xml.PluginRegistryImpl register
INFO: plug-in and fragment descriptors registered - 1
Aug 28, 2013 7:30:21 PM org.java.plugin.standard.StandardPluginManager activatePlugin
INFO: plug-in started - org.openstreetmap.osmosis.core.plugin.Core@0.0.0.42-6-gf39a160-dirty
Aug 28, 2013 7:30:21 PM org.openstreetmap.osmosis.core.Osmosis run
INFO: Preparing pipeline.
Aug 28, 2013 7:30:21 PM org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask <init>
INFO: mapfile-writer version 0.2.4
Aug 28, 2013 7:30:22 PM org.openstreetmap.osmosis.core.Osmosis run
INFO: Launching pipeline execution.
Aug 28, 2013 7:30:22 PM org.openstreetmap.osmosis.core.Osmosis run
INFO: Pipeline executing, waiting for completion.
Aug 28, 2013 7:30:22 PM org.openstreetmap.osmosis.core.pipeline.common.ActiveTaskManager waitForCompletion
SEVERE: Thread for task 1-rb failed
java.lang.NullPointerException
at org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask.release(MapFileWriterTask.java:192)
at crosby.binary.osmosis.OsmosisReader.run(OsmosisReader.java:50)
at java.lang.Thread.run(Thread.java:724)
Aug 28, 2013 7:30:22 PM org.openstreetmap.osmosis.core.Osmosis main
SEVERE: 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:92)
at org.openstreetmap.osmosis.core.Osmosis.main(Osmosis.java:37)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:329)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:239)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
at org.codehaus.classworlds.Launcher.main(Launcher.java:47)Ich werde es nochmal mit einem Java von Oracle versuchen. Hier mit einem Oracle Java Version 1.7.025
eberhard@eberhard-ESPRIMO ~/osmosis $ bin/osmosis -plugin org.mapsforge.preprocessing.map.osmosis.MapFileWriterPluginLoader --rb file=~/andorra-latest.osm.pbf --mapfile-writer file=andorra-0.2.4.map type=hd
Aug 28, 2013 7:52:54 PM org.openstreetmap.osmosis.core.Osmosis run
INFO: Osmosis Version 0.43.1
Aug 28, 2013 7:52:54 PM org.java.plugin.registry.xml.ManifestParser <init>
INFO: got SAX parser factory - org.apache.xerces.jaxp.SAXParserFactoryImpl@18e546
Aug 28, 2013 7:52:54 PM org.java.plugin.registry.xml.PluginRegistryImpl configure
INFO: configured, stopOnError=false, isValidating=true
Aug 28, 2013 7:52:55 PM org.java.plugin.registry.xml.PluginRegistryImpl register
INFO: plug-in and fragment descriptors registered - 1
Aug 28, 2013 7:52:55 PM org.java.plugin.standard.StandardPluginManager activatePlugin
INFO: plug-in started - org.openstreetmap.osmosis.core.plugin.Core@0.0.0.42-6-gf39a160-dirty
Aug 28, 2013 7:52:55 PM org.openstreetmap.osmosis.core.Osmosis run
INFO: Preparing pipeline.
java.io.FileNotFoundException: /home/eberhard/andorra-latest.osm.pbf (Datei oder Verzeichnis nicht gefunden)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:138)
at crosby.binary.osmosis.OsmosisReaderFactory.createTaskManagerImpl(OsmosisReaderFactory.java:39)
at org.openstreetmap.osmosis.core.pipeline.common.TaskManagerFactory.createTaskManager(TaskManagerFactory.java:60)
at org.openstreetmap.osmosis.core.pipeline.common.Pipeline.buildTasks(Pipeline.java:50)
at org.openstreetmap.osmosis.core.pipeline.common.Pipeline.prepare(Pipeline.java:112)
at org.openstreetmap.osmosis.core.Osmosis.run(Osmosis.java:86)
at org.openstreetmap.osmosis.core.Osmosis.main(Osmosis.java:37)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:329)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:239)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
at org.codehaus.classworlds.Launcher.main(Launcher.java:47)
Aug 28, 2013 7:52:55 PM org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask <init>
INFO: mapfile-writer version 0.2.4
Aug 28, 2013 7:52:55 PM org.openstreetmap.osmosis.core.Osmosis main
SEVERE: Execution aborted.
java.lang.NullPointerException
at org.openstreetmap.osmosis.core.pipeline.common.Pipeline.connectTasks(Pipeline.java:74)
at org.openstreetmap.osmosis.core.pipeline.common.Pipeline.prepare(Pipeline.java:116)
at org.openstreetmap.osmosis.core.Osmosis.run(Osmosis.java:86)
at org.openstreetmap.osmosis.core.Osmosis.main(Osmosis.java:37)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:329)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:239)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
at org.codehaus.classworlds.Launcher.main(Launcher.java:47)
eberhard@eberhard-ESPRIMO ~/osmosis $ java -version
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) Client VM (build 23.25-b01, mixed mode)Wenn ich es geschafft habe, kleinere Länder von Europa mit der Version 0.40 umzusetzen, sind sie dann von minderer Qualität als mit der Version 0.43.1 ?
Gruß Svgt
Last edited by svgt (2013-08-28 18:59:07)
Offline
#7 2013-08-28 19:14:54
- wambacher
- Member

- From: Schlangenbad/Wambach, Germany
- Registered: 2009-12-16
- Posts: 16,769
- Website
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Hallo,
ich bedanke mich für die vielen Tipps nach kurzer Zeit. Ich habe nun Osmosis 0.43.1 unter Linux installiert. Ich benutze vorläufig OpenJDK.
warum vorläufig? osmosis läuft prima unter OpenJDK - 1.7 ist auch ok. Kein Grund, irgendwas auszuprobieren oder gar umzustellen.
Schieb mal bitte die osmosis-Befehle rüber - nur da kann man einfach sehen, was los ist.
Momang: du benutzt einen Plugin? Dann muß ich leider passen, da ich den nicht kenne oder gar benutze. Was macht der denn besonderes?
Es gibt bei Osmosis und den Plugins, die ja nicht vom Osmosis-Autor sind, extreme Abhängigkeiten zwischen den Versionen. Du mußt genau die richtige Plugin-Version für osmosis 0.43 finden und benutzen! Manche modernere Plugins werden sogar mit osmosis zusammen ausgeliefert.
Das würde ich jetzt dringenst checken.
Wenn ich es geschafft habe, kleinere Länder von Europa mit der Version 0.40 umzusetzen, sind sie dann von minderer Qualität als mit der Version 0.43.1 ?
Wenn du damit leben kannst, dass alle seit ca 6 Monaten neu erfassten Daten fehlen - warum nicht ![]()
Gruss
walter
Offline
#8 2013-08-28 19:27:58
- svgt
- Member
- Registered: 2013-08-26
- Posts: 22
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Dieses Mapsfile Writer Plugin ist nicht das neueste, weil ich ja ein altes Kartenformat 0.2.4 für Android 1.6 erzeugen will. Die Ausgangskarten osm.pbf sind neuesten Datums. also wohl auch die erzeugten Karten.
Wer weiß was über Kompatibilität dieses Plugins mit Osmosis Versionen?
Gruß Svgt
Offline
#9 2013-08-28 19:41:08
- wambacher
- Member

- From: Schlangenbad/Wambach, Germany
- Registered: 2009-12-16
- Posts: 16,769
- Website
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Wer weiß was über Kompatibilität dieses Plugins mit Osmosis Versionen?
wohl der Autor - wer sonst?
hier eine Liste der mit osmosis ausgelieferten Komponenten:
/opt/install/osmosis-0.43/lib/default$ ls
aopalliance-1.0.jar osmosis-hstore-jdbc-0.43-RELEASE.jar postgresql-9.1-901-1.jdbc4.jar
commons-codec-1.7.jar osmosis-osm-binary-0.43-RELEASE.jar protobuf-java-2.4.1.jar
commons-compress-1.4.1.jar osmosis-pbf-0.43-RELEASE.jar spring-aop-3.1.2.RELEASE.jar
commons-dbcp-1.4.jar osmosis-pbf2-0.43-RELEASE.jar spring-asm-3.1.2.RELEASE.jar
commons-logging-1.1.1.jar osmosis-pgsimple-0.43-RELEASE.jar spring-beans-3.1.2.RELEASE.jar
commons-pool-1.5.4.jar osmosis-pgsnapshot-0.43-RELEASE.jar spring-context-3.1.2.RELEASE.jar
jpf-1.5.jar osmosis-replication-0.43-RELEASE.jar spring-core-3.1.2.RELEASE.jar
mysql-connector-java-5.1.21.jar osmosis-replication-http-0.43-RELEASE.jar spring-expression-3.1.2.RELEASE.jar
netty-3.2.7.Final.jar osmosis-set-0.43-RELEASE.jar spring-jdbc-3.1.2.RELEASE.jar
osmosis-apidb-0.43-RELEASE.jar osmosis-tagfilter-0.43-RELEASE.jar spring-tx-3.1.2.RELEASE.jar
osmosis-areafilter-0.43-RELEASE.jar osmosis-tagtransform-0.43-RELEASE.jar stax2-api-3.1.1.jar
osmosis-core-0.43-RELEASE.jar osmosis-xml-0.43-RELEASE.jar woodstox-core-lgpl-4.1.4.jar
osmosis-dataset-0.43-RELEASE.jar plexus-classworlds-2.4.jar xercesImpl-2.9.1.jar
osmosis-extract-0.43-RELEASE.jar postgis-jdbc-1.3.3.jar xz-1.0.jardein Plugin ist wohl nicht dabei.
Das mit dem Plugin ist nur eine Vermutung von mir - aber ich liege da oft ziemlich richtig. Sei aber nicht sauer, falls ich dich auf eine falsche Fährte locke.
ansonsten wäre mal eine genauer Aufstellung des osmosis-Befehles interessant.
Gruss
walter
Offline
#10 2013-08-28 19:43:50
- Oli-Wan
- Member

- From: NRW
- Registered: 2010-09-14
- Posts: 2,814
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
svgt wrote:Wenn ich es geschafft habe, kleinere Länder von Europa mit der Version 0.40 umzusetzen, sind sie dann von minderer Qualität als mit der Version 0.43.1 ?
Wenn du damit leben kannst, dass alle seit ca 6 Monaten neu erfassten Daten fehlen - warum nicht
Ganz so schlimm ist es nicht. Solange er nicht --used-node oder --used-way benutzt oder gezielt per Kommandozeilenoption einen der kaputten IdTracker anfordert, sollte er mit 2^31+ kein Problem bekommen. Wenn ich mich recht entsinne, hat osmosis sogar schon seit 0.37 oder 0.38 "long" Node IDs.
Andererseits: wenn ein erfahrener Anwender einem sagt, nimm eine aktuelle Version, die alte ist kaputt, könnte man als Anfänger auch einfach auf ihn hören.
No animals were harmed in the writing of this posting.
Offline
#11 2013-08-28 20:07:44
- wambacher
- Member

- From: Schlangenbad/Wambach, Germany
- Registered: 2009-12-16
- Posts: 16,769
- Website
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Wenn ich mich recht entsinne, hat osmosis sogar schon seit 0.37 oder 0.38 "long" Node IDs.
Bin ich mir auch nicht mehr sicher. 0.42 !
Aber ich habe das hier gefunden: Mapsforge-writer-Plugin in Osmosis v0.42+ einbauen [gelöst] das sollte bestimmt weiter helfen.
Gruss
walter
Last edited by wambacher (2013-08-28 20:15:54)
Offline
#12 2013-08-28 20:09:58
- couchmapper
- Member
- Registered: 2013-02-17
- Posts: 462
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Im Post #6, zweiter Versuch mit Oracle JDK findet sich folgender interessanter Schnipsel. Das würde ich zunächst fixen.
java.io.FileNotFoundException: /home/eberhard/andorra-latest.osm.pbf (Datei oder Verzeichnis nicht gefunden)
Offline
#13 2013-08-28 20:21:21
- wambacher
- Member

- From: Schlangenbad/Wambach, Germany
- Registered: 2009-12-16
- Posts: 16,769
- Website
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Im Post #6, zweiter Versuch mit Oracle JDK findet sich folgender interessanter Schnipsel. Das würde ich zunächst fixen.
java.io.FileNotFoundException: /home/eberhard/andorra-latest.osm.pbf (Datei oder Verzeichnis nicht gefunden)
bei OpenJDK hat er --rb file=andorra-latest.osm.pbf und bei Oracle --rb file=~/andorra-latest.osm.pbf eingegeben. Kleiner aber gemeiner Unterschied ![]()
Ich würde möglichst OpenJDK verwenden - unter anderem weil der Entwickler von osmosis das natürlich auch macht.
Gruss
walter
Last edited by wambacher (2013-08-28 20:23:27)
Offline
#14 2013-08-28 20:27:17
- aighes
- Member
- From: Shanghai
- Registered: 2009-03-29
- Posts: 5,383
- Website
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Ich würde erstmal probieren, ob simple Anwendungen mit osmosis laufen. Also bspw. --rb file ... --wb file ...
Wenn die Basics laufen kann man sich an die komplexeren Sachen machen. Dann merkt man recht fix woran es liegt.
Viele Grüße
Henning
Offline
#15 2013-08-28 20:32:25
- wambacher
- Member

- From: Schlangenbad/Wambach, Germany
- Registered: 2009-12-16
- Posts: 16,769
- Website
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Ich würde erstmal probieren, ob simple Anwendungen mit osmosis laufen. Also bspw. --rb file ... --wb file ...
Wenn die Basics laufen kann man sich an die komplexeren Sachen machen. Dann merkt man recht fix woran es liegt.
hattu eigentlich recht ![]()
- osmosis 0.42 installieren (sicher ist sicher)
- OpenJDK 1.7 aktivieren
- osmosis mit --rb ... --wb ... testen
- plugin installieren
- weiter machen
Offline
#16 2013-08-28 21:08:06
- Oli-Wan
- Member

- From: NRW
- Registered: 2010-09-14
- Posts: 2,814
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Oli-Wan wrote:Wenn ich mich recht entsinne, hat osmosis sogar schon seit 0.37 oder 0.38 "long" Node IDs.
Bin ich mir auch nicht mehr sicher. 0.42 !
Jetzt hast Du mich doch glatt gezwungen nachzusehen. Die entscheidende Zeile
private long id;(vorher int) taucht erstmals in 0.38 auf: https://github.com/openstreetmap/osmosi … yData.java d.h. ab dieser Version beherrscht osmosis grundsätzlich große Zahlen.
Die Versionen vor 0.42 litten "nur" daran, daß die beiden alten idTracker nicht damit umgehen konnten und bei --used-node/--used-way standardmäßig genutzt wurden bzw. als Kommandozeilenoption zur Verfügung standen.
No animals were harmed in the writing of this posting.
Offline
#17 2013-08-28 22:33:26
- svgt
- Member
- Registered: 2013-08-26
- Posts: 22
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Ich fürchte, dass neuere Plugins vom mapfile-writer keine 0.2.4 Karten mehr erzeugen können. Das muss ich wohl den Autor des Plugins fragen. Ich vermute, es wird kein Zufall sein, dass das Plugin den Suffix 0.2.4 hat.
Woher kann ich mir das ganze Paket Osmosis 0.42 herunter laden?
Gruß Svgt
Last edited by svgt (2013-08-28 22:48:47)
Offline
#18 2013-08-28 23:15:46
- wambacher
- Member

- From: Schlangenbad/Wambach, Germany
- Registered: 2009-12-16
- Posts: 16,769
- Website
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Woher kann ich mir das ganze Paket Osmosis 0.42 herunter laden?
uii, dachte, das müsste ganz einfach zu finden sein - nee, musste selber kräftig suchen:
http://bretth.dev.openstreetmap.org/osmosis-build/
Gruss
walter
Offline
#19 2013-08-30 18:32:31
- svgt
- Member
- Registered: 2013-08-26
- Posts: 22
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
@wambacher: danke für die Download Liste. ich werde es damit probieren.
Gruss
Svgt
Last edited by svgt (2013-09-08 10:32:06)
Offline
#20 2013-09-08 10:56:52
- svgt
- Member
- Registered: 2013-08-26
- Posts: 22
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Hallo,
Inzwischen habe ich es hinbekommen, eine Deutschland-Karte (1,6GB) zu erzeugen. Nach 26 Stunden fing er an, die Ausgabe-Karte zu schreiben, nach insgesamt 53 Stunden war er fertig. Nun versuche ich es mit der Frankreich-Karte (2,6GB). Bisher sind alle Versuche nach max 16 Stunden wegen OutOfMemoryError abgebrochen. Er hatte ca eine Stunde die Rohdaten eingelesen, dann ca 35GB heapWays, idxNodesd, idxNodesi, idxWaysd und idxWaysi erzeugt.
set JAVACMD_OPTIONS=-Xmx16GDieses ist meine maximale Speicherangabe für Java. Meine Umgebung: LinuxMint14 32bit, LinuxMint15 64bit, Osmosis 0.40, 70GB /tmp Speicher, 3GB Ram, 3GHz Dual, OpenJDK 1.7.0_15 32bit, 1.7.0_25 64bit. Ich hatte es in 32bit und 64bit Umgebung versucht.
Was könnte ich dem Java noch zusätzlich anbieten, damit er auch mit der Frankreich-Karte durchkommt?
Gruß Svgt
Last edited by svgt (2013-09-08 11:37:37)
Offline
#21 2013-09-08 11:56:59
- wambacher
- Member

- From: Schlangenbad/Wambach, Germany
- Registered: 2009-12-16
- Posts: 16,769
- Website
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Nach 26 Stunden fing er an, die Ausgabe-Karte zu schreiben, nach 53 Stunden war er fertig.
Wer ist ER? Ich nehme an, du meinst den osmosis-Befehl mit dem Plugin? wäre nett, wenn du die komplette Eingabe dazu schreiben würdest. Musste etwas grübeln ![]()
set JAVACMD_OPTIONS=-Xmx16GDieses ist meine maximale Speicherangabe für Java. Meine Umgebung: LinuxMint15 64bit, LinuxMint14 32bit, Osmosis 0.40, 70GB /tmp Speicher, 3GB Ram, OpenJDK 1.7.0_15. Ich hatte es in 32bit und 64bit Umgebung versucht.
Was könnte ich dem Java noch zusätzlich anbieten, damit er auch mit der Frankreich-Karte durchkommt?
- Java soll 16GB nutzen dürfen, dein Rechner hat aber nur 3 GB - wie groß ist denn der SWAP?
- hänge noch die Option -XshowSettings:vm dran und schau ob das überhaupt ankommt.
- bleib bei 64Bit. Das hat keinen Einfluß auf die Speicherverwaltung; es werden nur andere Instruktionen verwendet um mit großen Zahlen zu rechnen und das ist einfach langsamer.
Ich habe Europa früher auf einer 2GB-Maschine mit 2 GB Swap verwendet. Du machst anscheinend irgendwas, was unheimlich Speicher frißt oder dein -Xmx kommt garnicht an. Sollte es der Plugin sein, solltest du dich an die Entwickler wenden.
Gruss
walter
Offline
#22 2013-09-08 12:36:25
- svgt
- Member
- Registered: 2013-08-26
- Posts: 22
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Ich benutze 2GB Swap Partition. In der osmosis.bat steht jetzt auch drin:
set JAVACMD_OPTIONS=-XshowSettings:vmIm Protokoll beim Andorra Umsetzen finde ich nirgends eine Ausgabe.
Offline
#23 2013-09-08 12:46:03
- wambacher
- Member

- From: Schlangenbad/Wambach, Germany
- Registered: 2009-12-16
- Posts: 16,769
- Website
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
Ich benutze 2GB Swap Partition. In der osmosis.bat steht jetzt auch drin:
set JAVACMD_OPTIONS=-XshowSettings:vmIm Protokoll beim Andorra Umsetzen finde ich nirgends eine Ausgabe.
Und wo soll das arme System die fehlenden 12 GB hernehmen?
Zu deinen "Ausgaben": solange du nicht informativer wirst (welche Eingabe ergibt welche Ausgabe?) ist für mich Ende vom Gelände. Ich helfe gerne aber Hellsehen hab ich nicht im Angebot.
Gruss
walter
Offline
#24 2013-09-08 13:18:52
- chris66
- Member

- From: Germany
- Registered: 2009-05-24
- Posts: 10,130
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
- bleib bei 64Bit. Das hat keinen Einfluß auf die Speicherverwaltung; es werden nur andere Instruktionen verwendet um mit großen Zahlen zu rechnen und das ist einfach langsamer.
64 bit java benötigt mehr Speicher. ![]()
Abhilfe: -XuseCompressedOops (oder so ähnlich) verwenden, dann werden die Pointer komprimiert, was aber natürlich Performance kostet.
Last edited by chris66 (2013-09-08 13:20:45)
Mapper aus dem Münsterland.
Offline
#25 2013-09-08 17:35:25
- svgt
- Member
- Registered: 2013-08-26
- Posts: 22
Re: Osmosis 0.40 java.lang.OutOfMemoryError: Java heap space
hans@hans-Product ~/Arbeitsfläche $ cd ~/osmosis-0.40
hans@hans-Product ~/osmosis-0.40 $ bin/osmosis -plugin org.mapsforge.preprocessing.map.osmosis.MapFileWriterPluginLoader --rb file=france-latest.osm.pbf --mw file=france-0.2.4.map type=hd
Sep 07, 2013 11:02:13 AM org.openstreetmap.osmosis.core.Osmosis run
INFO: Osmosis Version 0.40
Sep 07, 2013 11:02:14 AM org.java.plugin.registry.xml.ManifestParser <init>
INFO: got SAX parser factory - org.apache.xerces.jaxp.SAXParserFactoryImpl@18eb7e0
Sep 07, 2013 11:02:14 AM org.java.plugin.registry.xml.PluginRegistryImpl configure
INFO: configured, stopOnError=false, isValidating=true
Sep 07, 2013 11:02:14 AM org.java.plugin.registry.xml.PluginRegistryImpl register
INFO: plug-in and fragment descriptors registered - 1
Sep 07, 2013 11:02:14 AM org.java.plugin.standard.StandardPluginManager activatePlugin
INFO: plug-in started - org.openstreetmap.osmosis.core.plugin.Core@0.40.0
Sep 07, 2013 11:02:14 AM org.openstreetmap.osmosis.core.Osmosis run
INFO: Preparing pipeline.
Sep 07, 2013 11:02:14 AM org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask <init>
INFO: mapfile-writer version 0.2.4
Sep 07, 2013 11:02:15 AM org.openstreetmap.osmosis.core.Osmosis run
INFO: Launching pipeline execution.
Sep 07, 2013 11:02:15 AM org.openstreetmap.osmosis.core.Osmosis run
INFO: Pipeline executing, waiting for completion.
Sep 07, 2013 11:02:15 AM org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask process
INFO: start reading data...
Sep 07, 2013 12:04:48 PM org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask complete
INFO: completing read...
Sep 08, 2013 4:18:18 AM org.openstreetmap.osmosis.core.pipeline.common.ActiveTaskManager waitForCompletion
SEVERE: Thread for task 1-rb failed
java.lang.OutOfMemoryError: Java heap space
at gnu.trove.list.array.TDoubleArrayList.ensureCapacity(TDoubleArrayList.java:186)
at gnu.trove.list.array.TDoubleArrayList.add(TDoubleArrayList.java:221)
at org.mapsforge.preprocessing.map.osmosis.GeoUtils$SutherlandHodgmanClipping.clipPolygonToEdge(GeoUtils.java:751)
at org.mapsforge.preprocessing.map.osmosis.GeoUtils$SutherlandHodgmanClipping.clipPolygon(GeoUtils.java:692)
at org.mapsforge.preprocessing.map.osmosis.GeoUtils$SutherlandHodgmanClipping.accept(GeoUtils.java:662)
at org.mapsforge.preprocessing.map.osmosis.GeoUtils.mapWayToTiles(GeoUtils.java:124)
at org.mapsforge.preprocessing.map.osmosis.HDTileBasedDataStore.complete(HDTileBasedDataStore.java:304)
at org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask.complete(MapFileWriterTask.java:157)
at crosby.binary.osmosis.OsmosisBinaryParser.complete(OsmosisBinaryParser.java:35)
at crosby.binary.file.BlockInputStream.process(BlockInputStream.java:37)
at crosby.binary.osmosis.OsmosisReader.run(OsmosisReader.java:37)
at java.lang.Thread.run(Thread.java:722)
Sep 08, 2013 4:18:18 AM org.openstreetmap.osmosis.core.Osmosis main
SEVERE: 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:92)
at org.openstreetmap.osmosis.core.Osmosis.main(Osmosis.java:37)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:329)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:239)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
at org.codehaus.classworlds.Launcher.main(Launcher.java:47)
hans@hans-Product ~/osmosis-0.40 $ java version "1.7.0_15"
OpenJDK Runtime Environment (IcedTea7 2.3.7) (7u15-2.3.7-0ubuntu1~12.10)
OpenJDK Client VM (build 23.7-b01, mixed mode, sharing)Das war mein letzter Versuch mit 32bit unter LinuxMint14
Offline