Modify

Opened 5 years ago

Closed 5 years ago

#18228 closed enhancement (fixed)

Test 'Unconnected highways' is very slow when long barrier is involved

Reported by: GerdP Owned by: team
Priority: normal Milestone: 19.10
Component: Core validator Version:
Keywords: template_report, performance Cc:

Description

What steps will reproduce the problem?

  1. Load attached file
  2. Run validator
  3. Note that the test "Unconnected highways" takes quite long

What is the expected result?

Short run time

What happens instead?

Test 'Unconnected highways' completed in 2.3 s

Please provide any additional information below. Attach a screenshot if possible.

The barrier has 1901 nodes and its bbox encloses the nodes which end near other highways. The time is spent in the method barrierBetween() which calls Geometry.addIntersections() to find out if the barrier is between the end node and the other highway. Geometry.addIntersections() is too slow for this purpose as it also tries to find self intersections of the barrier way.

Build-Date:2019-10-16 08:30:38
Revision:15456
Is-Local-Build:true

Identification: JOSM/1.5 (15456 SVN en) Windows 10 64-Bit
OS Build number: Windows 10 Home 1903 (18362)
Memory Usage: 1166 MB / 1753 MB (478 MB allocated, but free)
Java version: 1.8.0_191-b12, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Screen: \Display0 1920x1080
Maximum Screen Size: 1920x1080
VM arguments: [-agentlib:jdwp=transport=dt_socket,suspend=y,address=localhost:52481, -ea, -Dfile.encoding=UTF-8]
Program arguments: [--debug]
Dataset consistency test: No problems found

Plugins:
+ OpeningHoursEditor (34977)
+ apache-commons (35092)
+ buildings_tools (35171)
+ continuosDownload (82)
+ ejml (35122)
+ geotools (35169)
+ jaxb (35014)
+ jts (35122)
+ o5m (34908)
+ opendata (35179)
+ pbf (35033)
+ poly (34991)
+ reverter (35084)
+ undelete (34977)
+ utilsplugin2 (35177)

Last errors/warnings:
- E: 5585813923 287603501 1895
- E: 5585812919 287603501 1895
- E: 3634609369 287603501 1895
- E: 2082845903 287603501 1895
- E: 3595468370 287603501 1895
- E: 1276911691 287603501 1895
- E: 4044858992 287603501 1895
- E: 2830648760 287603501 1895
- E: org.openstreetmap.josm.io.OsmApiException: ResponseCode=400, Error Header=<The maximum bbox size is 0.25, and your request was too large. Either request a smaller area, or use planet.osm>
- E: Bad Request - org.openstreetmap.josm.gui.widgets.HtmlPanel[,0,0,0x0,invalid,layout=java.awt.BorderLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=9,maximumSize=,minimumSize=,preferredSize=]

Attachments (1)

long-barrier.osm.bz2 (190.6 KB ) - added by GerdP 5 years ago.

Download all attachments as: .zip

Change History (2)

by GerdP, 5 years ago

Attachment: long-barrier.osm.bz2 added

comment:1 by GerdP, 5 years ago

Resolution: fixed
Status: newclosed

In 15458/josm:

fix #18228: drastically improve performance of test "Unconnected highways" when long barriers are involved
Test 'Unconnected highways' completed in 25 ms
instead of
Test 'Unconnected highways' completed in 2.3 s
for example attached to #18228.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain team.
as The resolution will be set.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.