Modify

Opened 9 years ago

Last modified 4 years ago

#8335 new defect

FixAddresses: IAE "Comparison method violates its general contract!" (java 7)

Reported by: mse@… Owned by: OliverW
Priority: normal Milestone:
Component: Plugin fixaddresses Version:
Keywords: java7 Cc: mse@…, OliverW

Description (last modified by Don-vip)

The plugin FixAddresses aborted during the update of approx. 20 addresses. It occurred after having successfully updated approx 500 addresses in Schaffhausen, Switzerland.

Repository Root: http://josm.openstreetmap.de/svn
Build-Date: 2012-11-29 02:31:07
Last Changed Author: stoecker
Revision: 5608
Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
URL: http://josm.openstreetmap.de/svn/trunk
Last Changed Date: 2012-11-28 23:47:46 +0100 (Wed, 28 Nov 2012)
Last Changed Rev: 5608

Identification: JOSM/1.5 (5608 de)
Memory Usage: 182 MB / 494 MB (35 MB allocated, but free)
Java version: 1.7.0_07, Oracle Corporation, Java HotSpot(TM) Client VM
Operating system: Windows XP
Dataset consistency test: No problems found

Plugin: FixAddresses (28807)
Plugin: buildings_tools (28891)

java.lang.IllegalArgumentException: Comparison method violates its general contract!
	at java.util.ComparableTimSort.mergeHi(Unknown Source)
	at java.util.ComparableTimSort.mergeAt(Unknown Source)
	at java.util.ComparableTimSort.mergeForceCollapse(Unknown Source)
	at java.util.ComparableTimSort.sort(Unknown Source)
	at java.util.ComparableTimSort.sort(Unknown Source)
	at java.util.Arrays.sort(Unknown Source)
	at java.util.Collections.sort(Unknown Source)
	at org.openstreetmap.josm.plugins.fixAddresses.AddressEditContainer.invalidate(AddressEditContainer.java:539)
	at org.openstreetmap.josm.plugins.fixAddresses.AddressEditContainer.invalidate(AddressEditContainer.java:515)
	at org.openstreetmap.josm.plugins.fixAddresses.gui.IncompleteAddressesDialog.entityChanged(IncompleteAddressesDialog.java:206)
	at org.openstreetmap.josm.plugins.fixAddresses.AddressEditContainer.fireEntityChanged(AddressEditContainer.java:150)
	at org.openstreetmap.josm.plugins.fixAddresses.AddressEditContainer.entityChanged(AddressEditContainer.java:683)
	at org.openstreetmap.josm.plugins.fixAddresses.OSMEntityBase.fireEntityChanged(OSMEntityBase.java:87)
	at org.openstreetmap.josm.plugins.fixAddresses.OSMEntityBase.setOSMTag(OSMEntityBase.java:170)
	at org.openstreetmap.josm.plugins.fixAddresses.OSMAddress.applyGuessForTag(OSMAddress.java:241)
	at org.openstreetmap.josm.plugins.fixAddresses.OSMAddress.applyAllGuesses(OSMAddress.java:224)
	at org.openstreetmap.josm.plugins.fixAddresses.gui.actions.ApplyAllGuessesAction.applyGuesses(ApplyAllGuessesAction.java:96)
	at org.openstreetmap.josm.plugins.fixAddresses.gui.actions.ApplyAllGuessesAction.addressEditActionPerformed(ApplyAllGuessesAction.java:72)
	at org.openstreetmap.josm.plugins.fixAddresses.gui.actions.AbstractAddressEditAction.actionPerformed(AbstractAddressEditAction.java:110)
	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
	at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
	at java.awt.Component.processMouseEvent(Unknown Source)
	at javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$200(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)

Attachments (1)

Schaffhausen_osm.zip (834.8 KB) - added by mse@… 9 years ago.
Added the OSM file (zipped due to size)

Download all attachments as: .zip

Change History (11)

comment:1 Changed 9 years ago by Don-vip

Could you please attach your .osm file? Thanks.

Changed 9 years ago by mse@…

Attachment: Schaffhausen_osm.zip added

Added the OSM file (zipped due to size)

comment:2 Changed 9 years ago by anonymous

Please find enclosed the OSM file. Due to its size, I zipped it.

comment:3 Changed 9 years ago by skyper

Cc: OliverW added
Component: CorePlugin fixaddresses
Description: modified (diff)
Owner: changed from team to OliverW

comment:4 Changed 8 years ago by Don-vip

See #8712 to understand why this bug only occurs with JDK7.

comment:5 Changed 8 years ago by Don-vip

Keywords: java7 added; FixAddresses removed

comment:6 Changed 8 years ago by OliverW

I was not able to reproduce the problem with Java 7 so far - even not with the attached OSM file.

comment:7 in reply to:  6 Changed 8 years ago by Don-vip

Replying to OliverW:

I was not able to reproduce the problem with Java 7 so far - even not with the attached OSM file.

This problem is hidden by default if you do not use a local build of JOSM. To reproduce you can set the property jdk.Arrays.useLegacyMergeSort to false, see r5977.

comment:8 Changed 7 years ago by Don-vip

Description: modified (diff)
Summary: Unexpected abort of OSM plugin FixAddress esFixAddresses: IAE "Comparison method violates its general contract!" (java 7)

comment:9 Changed 5 years ago by simon04

Also a duplicate of #12006?

comment:10 Changed 4 years ago by Don-vip

Ticket #16185 has been marked as a duplicate of this ticket.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as new The owner will remain OliverW.
as The resolution will be set.
to The owner will be changed from OliverW to the specified user.
The owner will change to mse@b-e-s.ch
as duplicate The resolution will be set to duplicate.The specified ticket will be cross-referenced with this ticket
The owner will be changed from OliverW to anonymous.

Add Comment


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

 
Note: See TracTickets for help on using tickets.