Modify

Opened 6 years ago

Closed 5 years ago

#9680 closed defect (fixed)

Relation validation causes JOSM to freeze

Reported by: tony.wroblewski@… Owned by: team
Priority: normal Milestone: 14.08
Component: Core validator Version: latest
Keywords: performance Cc: simon04

Description

Relation #2970267 causes JOSM to crash upon validation. This is a huge forest area in Switzerland, which seems to cause the validator to hang.

I've attached the OSM file containing all members of the relation.

Attachments (4)

broken.osm.zip (794.0 KB) - added by tony.wroblewski@… 6 years ago.
OSM file containing broken relation
system-info.txt (43.4 KB) - added by anonymous 6 years ago.
Added system info
2014-02-11-000335_1150x1043_scrot.png (190.3 KB) - added by simon04 6 years ago.
9680_alpha.patch (4.3 KB) - added by Don-vip 6 years ago.
alpha patch, reduces time from 1min 25s to 32s

Download all attachments as: .zip

Change History (16)

Changed 6 years ago by tony.wroblewski@…

Attachment: broken.osm.zip added

OSM file containing broken relation

comment:1 Changed 6 years ago by Don-vip

Can you please also post your system info from Help -> Show status report ? And tell us a bit about your hardware. Thanks :)

Changed 6 years ago by anonymous

Attachment: system-info.txt added

Added system info

comment:2 Changed 6 years ago by Don-vip

Cc: simon04 added
Component: CoreCore validator
Keywords: performance added

Simon, we've got a performance issue here :)

DEBUG: Running test Multipolygon
INFO: Test 'Multipolygon' completed in 1 min 9 s

comment:3 Changed 6 years ago by simon04

This is due to the test added in r6575. We could restrict this test for small relations. I plan to do some profiling to determine why this test takes so long …

Changed 6 years ago by simon04

comment:4 Changed 6 years ago by simon04

Profiling results: 2014-02-11-000335_1150x1043_scrot.png

The comment in org.openstreetmap.josm.data.osm.MultipolygonCreate#findOuterWaysRecursive, "TODO: bad performance for deep nesting" seems to be true. :-)

Changed 6 years ago by Don-vip

Attachment: 9680_alpha.patch added

alpha patch, reduces time from 1min 25s to 32s

comment:5 Changed 6 years ago by Don-vip

Summary: Relation validation causes JOSM to freeze[alpha patch] Relation validation causes JOSM to freeze

I don't know if we can find a better algorithm but this small patch allows significant improvements. Did you start something Simon ?

comment:6 Changed 6 years ago by simon04

I haven't started to look into improving the algorithm. So feel free to apply your improvement :-)

comment:7 Changed 6 years ago by Don-vip

In 6841/josm:

see #9680 - Boost multipolygon computation performance by caching Areas

comment:8 Changed 6 years ago by Don-vip

Summary: [alpha patch] Relation validation causes JOSM to freezeRelation validation causes JOSM to freeze

comment:15 Changed 5 years ago by Don-vip

Milestone: 14.08
Last edited 5 years ago by Don-vip (previous) (diff)

comment:16 Changed 5 years ago by Don-vip

In 7422/josm:

see #9680 - small multipolygon computation optimization (reduces time from 26s to 19s) + fix bug in validator preferences

comment:17 Changed 5 years ago by Don-vip

In 7423/josm:

see #9680, see #4626 - multithreaded multipolygon creation

comment:18 Changed 5 years ago by Don-vip

Resolution: fixed
Status: newclosed

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.

Add Comment


E-mail address and name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.