Modify

Opened 2 years ago

Closed 2 years ago

#22760 closed defect (fixed)

MWAI thows IAE while merging address and building features

Reported by: watmildon Owned by: taylor.smock
Priority: normal Milestone:
Component: Plugin mapwithai Version:
Keywords: template_report Cc:

Description

What steps will reproduce the problem?

  1. Download an area with AI buildings and National Address Data info
  2. Find an area where you are merging both the address and the nodes for a set of buildings
  3. Select the group
  4. Shift+A

I will add info here if/when I can slim down the repro.

What is the expected result?

Merged into the OSM layer

What happens instead?

IAE

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

Revision:18646
Build-Date:2023-01-30 15:15:00

Identification: JOSM/1.5 (18646 en) Windows 10 64-Bit
OS Build number: Windows 10 Pro 2009 (19045)
Memory Usage: 1024 MB / 4088 MB (291 MB allocated, but free)
Java version: 17.0.6+10-LTS, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1440×2560 (scaling 1.00×1.00) \Display1 3840×2160 (scaling 1.50×1.50)
Maximum Screen Size: 3840×2560
Best cursor sizes: 16×16→48×48, 32×32→48×48
System property file.encoding: Cp1252
System property sun.jnu.encoding: Cp1252
Locale info: en_US
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Djpackage.app-version=1.5.18646, --add-modules=java.scripting,java.sql,javafx.controls,javafx.media,javafx.swing,javafx.web, --add-exports=java.base/sun.security.action=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED, --add-opens=java.base/java.lang=ALL-UNNAMED, --add-opens=java.base/java.nio=ALL-UNNAMED, --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED, --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED, --add-opens=java.desktop/javax.imageio.spi=ALL-UNNAMED, --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED, --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED, -Djpackage.app-path=%UserProfile%\AppData\Local\JOSM\JOSM.exe]
Dataset consistency test: No problems found

Plugins:
+ FastDraw (35978)
+ FixAddresses (36011)
+ MapRoulette (7)
+ apache-commons (36034)
+ apache-http (35924)
+ buildings_tools (36011)
+ conflation (0.6.9)
+ continuosDownload (105)
+ contourmerge (v0.1.9)
+ ejml (35924)
+ geotools (36028)
+ gridify (1606242219)
+ imagery_offset_db (35978)
+ jackson (36034)
+ jaxb (35952)
+ jna (36005)
+ jts (36004)
+ mapwithai (992)
+ opendata (36025)
+ reverter (36043)
+ tageditor (36011)
+ terracer (35978)
+ todo (30306)
+ turnrestrictions (36011)
+ utilsplugin2 (36011)
+ wikipedia (605)

Map paint styles:
- https://josm.openstreetmap.de/josmfile?page=Styles/TigerReviewedNo&zip=1
+ %UserProfile%\Address Tags Validator - Highlight unaddressed
- https://josm.openstreetmap.de/josmfile?page=Styles/Modified&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/AddressValidator&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/MapWithAI&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Coloured_Streets&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Admin_Boundaries&zip=1

Last errors/warnings:
- 00016.909 E: Failed to locate image 'MapWithAI'
- 00084.303 E: java.nio.file.AccessDeniedException: <josm.cache>\mirror_https___josm.openstreetmap.de_josmfile_page_Styles_MapWithAI_zip_1.tmp -> <josm.cache>\mirror_https___josm.openstreetmap.de_josmfile_page_Styles_MapWithAI_zip_1
- 00217.138 E: Invalid setting (Icon missing): org.openstreetmap.josm.plugins.fixAddresses.FixAddressesPreferences
- 00228.702 E: java.nio.file.AccessDeniedException: <josm.cache>\mirror_https___josm.openstreetmap.de_josmfile_page_Styles_MapWithAI_zip_1.tmp -> <josm.cache>\mirror_https___josm.openstreetmap.de_josmfile_page_Styles_MapWithAI_zip_1
- 00229.468 E: java.nio.file.AccessDeniedException: <josm.cache>\mirror_https___josm.openstreetmap.de_josmfile_page_Styles_MapWithAI_zip_1.tmp -> <josm.cache>\mirror_https___josm.openstreetmap.de_josmfile_page_Styles_MapWithAI_zip_1
- 00303.819 W: Could not move autosaved file MapWithAI_20230221_225234186.osm to deleted_layers folder
- 00303.820 W: Unable to delete backup file <josm.pref>\autosave\MapWithAI_20230221_225234186.osm
- 00349.651 E: java.nio.file.AccessDeniedException: <josm.cache>\mirror_https___josm.openstreetmap.de_josmfile_page_Styles_MapWithAI_zip_1.tmp -> <josm.cache>\mirror_https___josm.openstreetmap.de_josmfile_page_Styles_MapWithAI_zip_1
- 00352.799 E: java.nio.file.AccessDeniedException: <josm.cache>\mirror_https___josm.openstreetmap.de_josmfile_page_Styles_MapWithAI_zip_1.tmp -> <josm.cache>\mirror_https___josm.openstreetmap.de_josmfile_page_Styles_MapWithAI_zip_1
- 00729.152 E: Handled by bug report queue: org.openstreetmap.josm.tools.bugreport.ReportedException: ReportedException [thread=Thread[AWT-EventQueue-0,6,main], exception=ReportedException [thread=Thread[AWT-EventQueue-0,6,main], exception=java.lang.IllegalArgumentException: {Node id=-4608580812284039583 version=0 MVDT lat=39.02832034397,lon=-95.7925216825} is already deleted, methodWarningFrom=null], methodWarningFrom=null]. Cause: org.openstreetmap.josm.tools.bugreport.ReportedException: ReportedException [thread=Thread[AWT-EventQueue-0,6,main], exception=java.lang.IllegalArgumentException: {Node id=-4608580812284039583 version=0 MVDT lat=39.02832034397,lon=-95.7925216825} is already deleted, methodWarningFrom=null]. Cause: org.openstreetmap.josm.tools.bugreport.ReportedException: java.lang.IllegalArgumentException: {Node id=-4608580812284039583 version=0 MVDT lat=39.02832034397,lon=-95.7925216825} is already deleted. Cause: java.lang.IllegalArgumentException: {Node id=-4608580812284039583 version=0 MVDT lat=39.02832034397,lon=-95.7925216825} is already deleted



=== REPORTED CRASH DATA ===
sequence_information:
 - sequence_name: Sequence: Add object from MapWithAI
 - sequence_command: Create connections from MapWithAI data
 - sequence_index: 1
 - sequence_commands: [org.openstreetmap.josm.plugins.mapwithai.commands.MovePrimitiveDataSetCommand;org.openstreetmap.josm.plugins.mapwithai.commands.CreateConnectionsCommand]
 - sequence_commands_descriptions: [Move OsmPrimitives between layers;Create connections from MapWithAI data]

BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (23) of main
ReportedException [thread=Thread[AWT-EventQueue-0,6,main], exception=ReportedException [thread=Thread[AWT-EventQueue-0,6,main], exception=ReportedException [thread=Thread[AWT-EventQueue-0,6,main], exception=java.lang.IllegalArgumentException: {Node id=-4608580812284039583 version=0 MVDT lat=39.02832034397,lon=-95.7925216825} is already deleted, methodWarningFrom=null], methodWarningFrom=null], methodWarningFrom=null]
	at org.openstreetmap.josm.command.SequenceCommand.createReportedException(SequenceCommand.java:146)
	at org.openstreetmap.josm.command.SequenceCommand.executeCommand(SequenceCommand.java:114)
	at org.openstreetmap.josm.plugins.mapwithai.commands.CreateConnectionsCommand.executeCommand(CreateConnectionsCommand.java:68)
	at org.openstreetmap.josm.command.SequenceCommand.executeCommand(SequenceCommand.java:112)
	at org.openstreetmap.josm.gui.util.GuiHelper.runInEDTAndWait(GuiHelper.java:225)
	at org.openstreetmap.josm.plugins.mapwithai.commands.MapWithAIAddCommand.run(MapWithAIAddCommand.java:110)
	at org.openstreetmap.josm.gui.util.GuiHelper.runInEDTAndWait(GuiHelper.java:225)
	at org.openstreetmap.josm.plugins.mapwithai.commands.MapWithAIAddCommand.executeCommand(MapWithAIAddCommand.java:84)
	at org.openstreetmap.josm.data.UndoRedoHandler.addNoRedraw(UndoRedoHandler.java:300)
	at org.openstreetmap.josm.data.UndoRedoHandler.add(UndoRedoHandler.java:354)
	at org.openstreetmap.josm.plugins.mapwithai.backend.MapWithAIMoveAction.lambda$actionPerformed$1(MapWithAIMoveAction.java:90)
	at org.openstreetmap.josm.gui.util.GuiHelper.runInEDTAndWait(GuiHelper.java:225)
	at org.openstreetmap.josm.plugins.mapwithai.backend.MapWithAIMoveAction.actionPerformed(MapWithAIMoveAction.java:90)
	at java.desktop/javax.swing.SwingUtilities.notifyAction(Unknown Source)
	at java.desktop/javax.swing.JComponent.processKeyBinding(Unknown Source)
	at java.desktop/javax.swing.KeyboardManager.fireBinding(Unknown Source)
	at java.desktop/javax.swing.KeyboardManager.fireKeyboardAction(Unknown Source)
	at java.desktop/javax.swing.JComponent.processKeyBindingsForAllComponents(Unknown Source)
	at java.desktop/javax.swing.JComponent.processKeyBindings(Unknown Source)
	at java.desktop/javax.swing.JComponent.processKeyEvent(Unknown Source)
	at java.desktop/java.awt.Component.processEvent(Unknown Source)
	at java.desktop/java.awt.Container.processEvent(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(Unknown Source)
	at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(Unknown Source)
	at java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(Unknown Source)
	at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(Unknown Source)
	at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
Caused by: ReportedException [thread=Thread[AWT-EventQueue-0,6,main], exception=ReportedException [thread=Thread[AWT-EventQueue-0,6,main], exception=java.lang.IllegalArgumentException: {Node id=-4608580812284039583 version=0 MVDT lat=39.02832034397,lon=-95.7925216825} is already deleted, methodWarningFrom=null], methodWarningFrom=null]
	at org.openstreetmap.josm.command.SequenceCommand.createReportedException(SequenceCommand.java:146)
	at org.openstreetmap.josm.command.SequenceCommand.executeCommand(SequenceCommand.java:114)
	at org.openstreetmap.josm.command.SequenceCommand.executeCommand(SequenceCommand.java:112)
	... 49 more
Caused by: ReportedException [thread=Thread[AWT-EventQueue-0,6,main], exception=java.lang.IllegalArgumentException: {Node id=-4608580812284039583 version=0 MVDT lat=39.02832034397,lon=-95.7925216825} is already deleted, methodWarningFrom=null]
	at org.openstreetmap.josm.command.SequenceCommand.createReportedException(SequenceCommand.java:146)
	at org.openstreetmap.josm.command.SequenceCommand.executeCommand(SequenceCommand.java:114)
	at org.openstreetmap.josm.command.SequenceCommand.executeCommand(SequenceCommand.java:112)
	... 50 more
Caused by: java.lang.IllegalArgumentException: {Node id=-4608580812284039583 version=0 MVDT lat=39.02832034397,lon=-95.7925216825} is already deleted
	at org.openstreetmap.josm.command.DeleteCommand.lambda$executeCommand$0(DeleteCommand.java:211)
	at org.openstreetmap.josm.data.osm.DataSet.update(DataSet.java:1008)
	at org.openstreetmap.josm.command.DeleteCommand.executeCommand(DeleteCommand.java:207)
	at org.openstreetmap.josm.command.SequenceCommand.executeCommand(SequenceCommand.java:112)
	... 51 more

Attachments (0)

Change History (3)

comment:1 by watmildon, 2 years ago

Got it. This repros every time for me on latest MWAI.

1) Download this bounding box with AI buildings and NAD enabled: 39.030297;-95.7946849;39.0346355;-95.7886398
2) In the OSM layer delete the address node for 1824.
3) In the MWAI layer, box select the building and the address node
4) Shift+A

comment:2 by taylor.smock, 2 years ago

It looks like the primary problem is that there are two buildings with the exact same geometry at that location. That shouldn't be happening. Deleting one of them will let the code work as intended. I'll still fix this bug, but it appears there is also a bug on the server side code.

comment:3 by taylor.smock, 2 years ago

Resolution: fixed
Status: assignedclosed

Fixed in PR 19. It should be available in 2-3 hours, depending upon the CI.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain taylor.smock.
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.