Modify

Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#13491 closed defect (fixed)

"EDT violation detected" in self compiled r10916

Reported by: GerdP Owned by: team
Priority: normal Milestone: 16.08
Component: Core Version:
Keywords: template_report Cc:

Description

What steps will reproduce the problem?

  1. checkout r10916
  2. ant clean dist
  3. cd dist
  4. java -jar josm-custom.jar
  5. Load attached slow1.osm
  6. Press Shift+V (Validate)
  7. Left-Click on the line "Warnings (2,481)" to select it
  8. Click on "Fix" Button

What is the expected result?

Dialog Box shows "Fixing errors ... " with a counter that quickly finishes and disappears

What happens instead?

The expected dialog box appears but the errors are fixed very slowly.
In the command line windows I see several "EDT violation detected" messages followed by tracebacks (see attached log which also shows some messages produced by the ant clean dist step).

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

The problem doesn't appear with josm-latest.jar file from http://josm.openstreetmap.de,
this file is also much smaller (~1 MB).
I see the same problem when I build and execute in Eclipse.

Build-Date:2016-08-30 14:55:40
Revision:10916
Is-Local-Build:true

Identification: JOSM/1.5 (10916 SVN en) Windows 10 64-Bit
Memory Usage: 867 MB / 1753 MB (220 MB allocated, but free)
Java version: 1.8.0_102-b14, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Dataset consistency test: No problems found

Plugins:
+ apache-commons (32699)
+ buildings_tools (32796)
+ ejml (32680)
+ geotools (32813)
+ jts (32699)
+ o5m (32857)
+ opendata (32811)
+ pbf (32865)
+ poly (32699)
+ reverter (32796)
+ utilsplugin2 (32815)

Map paint styles:
+ https://josm.openstreetmap.de/josmfile?page=Styles/Lane_and_Road_Attributes&zip=1

Attachments (5)

edt.log (19.6 KB) - added by GerdP 3 years ago.
slow1.osm.zip (1.2 MB) - added by GerdP 3 years ago.
13491patch.patch (1.3 KB) - added by GerdP 3 years ago.
13491_v2.patch (4.0 KB) - added by GerdP 3 years ago.
13491_v3.patch (4.3 KB) - added by GerdP 3 years ago.

Download all attachments as: .zip

Change History (18)

Changed 3 years ago by GerdP

Attachment: edt.log added

Changed 3 years ago by GerdP

Attachment: slow1.osm.zip added

comment:1 Changed 3 years ago by GerdP

I've just noticed that the dup_node.patch provided for #13494 seems to fix the "EDT violation detected". I have no idea what the
message means and why I don't see it in "official" versions while I can reproduce it on machines (both Windows 10 +
jdk-8u102-windows-x64 .

comment:2 Changed 3 years ago by Don-vip

EDT violation are only detected on developer builds, because it does only concern developers :) You must find the first error occurence and fix the error (Swing components must be called from EDT, see https://docs.oracle.com/javase/tutorial/uiswing/concurrency/dispatch.html)

Changed 3 years ago by GerdP

Attachment: 13491patch.patch added

comment:3 Changed 3 years ago by GerdP

OK, thanks for the explanation. As stated above, the problem is fixed with the patch for #13494, Ive now attached a 2nd
patch to remove the DeleteCommand.checkAndConfirmOutlyingDelete call as it should always return true now and didn't work
when it detected an outlying node.

comment:4 Changed 3 years ago by stoecker

Hmm, wouldn't it be better to fix the check. This is very likely also used in other places.

comment:5 Changed 3 years ago by GerdP

Do you think about adding a parameter silent to DeleteCommand.checkAndConfirmOutlyingDelete ?

comment:6 Changed 3 years ago by stoecker

No. You said "didn't work when it detected an outlying node". There must be a reason to this and this should be fixed.

comment:7 Changed 3 years ago by GerdP

I'd prefer to split the test so that we have a (silent) public boolean DeleteCommand.checkOutlyingDelete() which is called
by DeleteCommand.checkAndConfirmOutlyingDelete.

comment:8 Changed 3 years ago by GerdP

Sorry, did not see your answer. It doesn't work when called from the DuplicateNode class as it tries to show a dialog when the check fails and that produces the EDT violation.

comment:9 in reply to:  7 Changed 3 years ago by stoecker

Replying to Gerd Petermann <gpetermann_muenchen@…>:

I'd prefer to split the test so that we have a (silent) public boolean DeleteCommand.checkOutlyingDelete() which is called
by DeleteCommand.checkAndConfirmOutlyingDelete.

Sounds reasonable to me.

Changed 3 years ago by GerdP

Attachment: 13491_v2.patch added

Changed 3 years ago by GerdP

Attachment: 13491_v3.patch added

comment:10 Changed 3 years ago by GerdP

See v3, I am not sure about the javadoc here.

comment:11 Changed 3 years ago by Don-vip

Milestone: 16.08

comment:12 Changed 3 years ago by Don-vip

Resolution: fixed
Status: newclosed

In 10948/josm:

fix #13491 - fix EDT violation (patch by Gerd Petermann, modified)

comment:13 Changed 3 years ago by Don-vip

In 10970/josm:

see #13491 - remove unused parameter

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.