#21788 closed defect (fixed)
[PATCH] conflation: JTS AssertionFailedException in org.openstreetmap.josm.plugins.conflation.MatchesComputation.generateMatches
Reported by: | Owned by: | Tyndare | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Plugin conflation | Version: | |
Keywords: | template_report | Cc: |
Description (last modified by )
What steps will reproduce the problem?
- Comparing geojson data with osm-data
- click on compare
- error message
OSM data is
area[name="Métropole de Lyon"]; nwr[amenity=bicycle_parking](area); out meta;
GeoJson is attached
Relative:URL: ^/trunk Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b Last:Changed Date: 2022-01-02 21:24:43 +0100 (Sun, 02 Jan 2022) Revision:18360 Build-Date:2022-01-02 20:26:19 URL:https://josm.openstreetmap.de/svn/trunk Identification: JOSM/1.5 (18360 fr) Linux Debian GNU/Linux 11 (bullseye) Memory Usage: 201 MB / 780 MB (48 MB allocated, but free) Java version: 11.0.13+8-post-Debian-1deb11u1, Debian, OpenJDK 64-Bit Server VM Look and Feel: javax.swing.plaf.metal.MetalLookAndFeel Screen: :0.0 1366×768 (scaling 1.00×1.00) :0.1 1920×1200 (scaling 1.00×1.00) Maximum Screen Size: 1920×1200 Best cursor sizes: 16×16→16×16, 32×32→32×32 Environment variable LANG: fr_FR.UTF-8 System property file.encoding: UTF-8 System property sun.jnu.encoding: UTF-8 Locale info: fr_FR Numbers with default locale: 1234567890 -> 1234567890 Desktop environment: GNOME Java package: openjdk-11-jre:amd64-11.0.13+8-1~deb11u1 Java ATK Wrapper package: libatk-wrapper-java:all-0.38.0-2+deb11u1 fonts-noto: fonts-noto:- VM arguments: [-Djosm.restart=true, -Djava.net.useSystemProxies=true] Dataset consistency test: No problems found Plugins: + apache-commons (35893) + apache-http (35893) + cadastre-fr (35893) + conflation (0.6.9) + ejml (35893) + geotools (35893) + gridify (1606242219) + http2 (35427) + jna (35893) + jts (35893) + notesolver (0.3.3) + openqa (0.2.2) + todo (30306) + utilsplugin2 (35893) + wikipedia (605) Last errors/warnings: - 00327.140 E: Handled by bug report queue: org.locationtech.jts.util.AssertionFailedException: Score = 1.9998712800076426 - 00425.508 E: Handled by bug report queue: org.locationtech.jts.util.AssertionFailedException: Score = 1.142798299432065 - 00450.022 E: Handled by bug report queue: org.locationtech.jts.util.AssertionFailedException: Score = 1.142798299432065 === REPORTED CRASH DATA === BugReportExceptionHandler#handleException: No data collected. Warning issued by: BugReportExceptionHandler#handleException === STACK TRACE === Thread: AWT-EventQueue-0 (19) of main org.locationtech.jts.util.AssertionFailedException: Score = 1.142798299432065 at org.locationtech.jts.util.Assert.isTrue(Assert.java:46) at com.vividsolutions.jcs.conflate.polygonmatch.Matches.add(Matches.java:166) at com.vividsolutions.jcs.conflate.polygonmatch.WeightedMatcher.toMatches(WeightedMatcher.java:98) at com.vividsolutions.jcs.conflate.polygonmatch.WeightedMatcher.match(WeightedMatcher.java:91) at com.vividsolutions.jcs.conflate.polygonmatch.ChainMatcher.match(ChainMatcher.java:74) at com.vividsolutions.jcs.conflate.polygonmatch.BasicFCMatchFinder.match(BasicFCMatchFinder.java:73) at com.vividsolutions.jcs.conflate.polygonmatch.DisambiguatingFCMatchFinder.match(DisambiguatingFCMatchFinder.java:30) at com.vividsolutions.jcs.conflate.polygonmatch.AreaFilterFCMatchFinder.match(AreaFilterFCMatchFinder.java:75) at org.openstreetmap.josm.plugins.conflation.MatchesComputation.generateMatches(MatchesComputation.java:80) at org.openstreetmap.josm.plugins.conflation.ConflationToggleDialog$2.realRun(ConflationToggleDialog.java:1151) at org.openstreetmap.josm.gui.PleaseWaitRunnable.doRealRun(PleaseWaitRunnable.java:94) at org.openstreetmap.josm.gui.PleaseWaitRunnable.run(PleaseWaitRunnable.java:142) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829)
Attachments (2)
Change History (12)
by , 3 years ago
Attachment: | pvo_patrimoine_voirie.pvostationnementvelo-josm.geojson added |
---|
comment:2 by , 3 years ago
Component: | Core → Plugin conflation |
---|---|
Owner: | changed from | to
Summary: | crash during conflation → conflation: JTS AssertionFailedException in org.openstreetmap.josm.plugins.conflation.MatchesComputation.generateMatches |
comment:3 by , 3 years ago
comment:4 by , 3 years ago
- The download area is described in the ticket. I use an overpass request in order to get the elements. area[name="Métropole de Lyon"]; nwr[amenity=bicycle_parking](area); out meta;
This gives me the "subject".
- The "reference" is the geojson attached to this ticket.
- I use de simple mode. It crashes if I try to match elements with key "ref:FR:GrandLyon"
comment:5 by , 3 years ago
Description: | modified (diff) |
---|
comment:6 by , 3 years ago
Thank you.
I use de simple mode. It crashes if I try to match elements with key "ref:FR:GrandLyon"
The ref:FR:GrandLyon
was the important bit -- without it, I was not able to reproduce.
comment:7 by , 3 years ago
Summary: | conflation: JTS AssertionFailedException in org.openstreetmap.josm.plugins.conflation.MatchesComputation.generateMatches → [PATCH] conflation: JTS AssertionFailedException in org.openstreetmap.josm.plugins.conflation.MatchesComputation.generateMatches |
---|
PR open at https://github.com/JOSM/conflation/pull/16
This pretty much came down to how the compareTo
code worked in OsmFeature
(which inherited it from Feature
), as the compareTo
code only checked geometry, not ids.
There 20 duplicate nodes in the dataset (from the overpass query in the original post).
For example, see https://osm.org/node/1272385008 and https://osm.org/node/7372040517.
by , 3 years ago
Attachment: | 21788.patch added |
---|
comment:8 by , 3 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:10 by , 3 years ago
"There 20 duplicate nodes in the dataset (from the overpass query in the original post).
For example, see https://osm.org/node/1272385008 and https://osm.org/node/7372040517."
How do you write a request to find that ? I would like to clean them.
comment:11 by , 3 years ago
I actually found those using the JOSM validator (see Help/Dialog/Validator).
Specifically, look for Nodes at same position
Can you give us the download area? I was unable to reproduce with a random area.