Modify

Opened 21 months ago

Last modified 4 weeks ago

#18697 new defect

IAE: "Failed to set current primitive. Current version not available in history" after conflicts

Reported by: anonymous Owned by: team
Priority: normal Milestone:
Component: Core Version:
Keywords: template_report history conflict regression Cc:

Description (last modified by gaben)

What steps will reproduce the problem?

Unsure. Crash Report unexpectedly popped up.

Modified: see #18816 for reproduction steps.

What is the expected result?

What happens instead?

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

URL:https://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2020-02-01 01:10:57 +0100 (Sat, 01 Feb 2020)
Build-Date:2020-02-01 00:12:46
Revision:15806
Relative:URL: ^/trunk

Identification: JOSM/1.5 (15806 en) Mac OS X 10.14.6
OS Build number: Mac OS X 10.14.6 (18G3020)
Memory Usage: 1850 MB / 1850 MB (265 MB allocated, but free)
Java version: 1.8.0_201-b09, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Screen: Display 188945226 1920x1080, Display 69969284 2048x1152
Maximum Screen Size: 2048x1152
VM arguments: [-Djava.security.policy=file:<java.home>/lib/security/javaws.policy, -DtrustProxy=true, -Djnlpx.home=<java.home>/bin, -Djava.security.manager, -Djnlpx.origFilenameArg=${HOME}/Desktop/josm.jnlp, -Djnlpx.remove=false, -Dsun.awt.warmup=true, -Djava.util.Arrays.useLegacyMergeSort=true, -Djnlpx.heapsize=NULL,2048m, -Dmacosx.jnlpx.dock.name=JOSM, -Dmacosx.jnlpx.dock.icon=${HOME}/Library/Application Support/Oracle/Java/Deployment/cache/6.0/25/4c122699-6f5f907a.icns, -Djnlpx.jvm="<java.home>/bin/java"]
Dataset consistency test: No problems found

Plugins:
+ EasyPresets (1537621333)
+ Mapillary (1.5.20)
+ OpenStreetCam (280)
+ apache-commons (35092)
+ apache-http (35092)
+ auto_tools (73)
+ buildings_tools (35248)
+ graphview (35313)
+ intersection (0.0.7)
+ jna (35092)
+ osm-obj-info (56)
+ reverter (35313)
+ rex (53)
+ tageditor (35258)
+ turnlanes-tagging (283)
+ turnrestrictions (35313)
+ utilsplugin2 (35248)

Tagging presets:
+ https://raw.githubusercontent.com/osmlab/name-suggestion-index/master/dist/name-suggestions.presets.xml

Map paint styles:
+ https://raw.githubusercontent.com/KaartGroup/Kaart-Styles/master/Kaart-Styles.mapcss
+ https://josm.openstreetmap.de/josmfile?page=Styles/Lane_and_Road_Attributes&zip=1
+ https://raw.githubusercontent.com/KaartGroup/Kaart-Styles/master/Overlapping%20Ways.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/Coloured_Streets&zip=1
- https://raw.githubusercontent.com/species/josm-preset-traffic_sign_direction/master/direction.mapcss

Validator rules:
+ https://raw.githubusercontent.com/KaartGroup/KaartValidator/master/kaart.clingstone.validator.mapcss

Last errors/warnings:
- E: Conflicts detected - <html>Uploading <strong>failed</strong> because the server has a newer version of one<br>of your nodes, ways, or relations.<br>The conflict is caused by the <strong>way</strong> with id <strong>767,597,312</strong>,<br>the server has version 4, your version is 3.<br><br>Click <strong>Synchronize way 767,597,312 only</strong> to synchronize the conflicting primitive only.<br>Click <strong>Synchronize entire dataset</strong> to synchronize the entire local dataset with the server.<br>Click <strong>Cancel</strong> to abort and continue editing.<br></html>
- W: Deleted or moved objects - <html>There are 6 objects in your local dataset which might be deleted on the server.<br>If you later try to delete or update them the server is likely to report a conflict.<br>Click <strong>Check on the server</strong> to check the state of these objects on the server.<br>Click <strong>Ignore</strong> to ignore.</html>
- E: Error header: Version mismatch: Provided 3, server had: 4 of Way 767597312
- E: Conflicts detected - <html>Uploading <strong>failed</strong> because the server has a newer version of one<br>of your nodes, ways, or relations.<br>The conflict is caused by the <strong>way</strong> with id <strong>767,597,312</strong>,<br>the server has version 4, your version is 3.<br><br>Click <strong>Synchronize way 767,597,312 only</strong> to synchronize the conflicting primitive only.<br>Click <strong>Synchronize entire dataset</strong> to synchronize the entire local dataset with the server.<br>Click <strong>Cancel</strong> to abort and continue editing.<br></html>
- W: Conflicts detected - <html>There was 1 conflict detected.</html>
- W: Deleted or moved objects - <html>There are 6 objects in your local dataset which might be deleted on the server.<br>If you later try to delete or update them the server is likely to report a conflict.<br>Click <strong>Check on the server</strong> to check the state of these objects on the server.<br>Click <strong>Ignore</strong> to ignore.</html>
- W: java.net.ConnectException: Operation timed out (Connection timed out)
- W: java.net.ConnectException: Operation timed out (Connection timed out)
- W: Deleted or moved objects - <html>There are 3 objects in your local dataset which might be deleted on the server.<br>If you later try to delete or update them the server is likely to report a conflict.<br>Click <strong>Check on the server</strong> to check the state of these objects on the server.<br>Click <strong>Ignore</strong> to ignore.</html>
- E: Handled by bug report queue: java.lang.IllegalArgumentException: Failed to set current primitive. Current version 5 not available in history.


=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-2 (45) of javawsApplicationThreadGroup
java.lang.IllegalArgumentException: Failed to set current primitive. Current version 5 not available in history.
	at org.openstreetmap.josm.gui.history.HistoryBrowserModel.setCurrentPointInTime(HistoryBrowserModel.java:334)
	at org.openstreetmap.josm.gui.history.HistoryBrowserModel.setCurrentPointInTime(HistoryBrowserModel.java:416)
	at org.openstreetmap.josm.gui.history.VersionTable$MouseListener.mousePressed(VersionTable.java:137)
	at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:280)
	at java.awt.Component.processMouseEvent(Component.java:6536)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
	at java.awt.Component.processEvent(Component.java:6304)
	at java.awt.Container.processEvent(Container.java:2239)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2297)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4532)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
	at java.awt.Container.dispatchEventImpl(Container.java:2283)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
	at java.awt.EventQueue$4.run(EventQueue.java:733)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Attachments (0)

Change History (24)

comment:1 Changed 21 months ago by Don-vip

Keywords: history added
Summary: Crash ReportIAE: Failed to set current primitive. Current version not available in history

comment:2 Changed 21 months ago by Don-vip

Keywords: conflict added
Summary: IAE: Failed to set current primitive. Current version not available in historyIAE: "Failed to set current primitive. Current version not available in history" after conflicts

comment:3 Changed 21 months ago by skyper

Is overpass used for the history ?

comment:4 Changed 13 months ago by gaben

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

comment:5 Changed 13 months ago by gaben

Maybe regression from r15772?

comment:6 Changed 13 months ago by gaben

Keywords: regression added

It definitely worked a few months before.

comment:7 Changed 9 months ago by gaben

I'll test reverting r15772 next month to see if it helps.

(ping for myself)

comment:8 Changed 7 months ago by gaben

Yep, it's a regression from r15772. Can't reproduce on a local build where it got reverted. See #18816 for reproduction steps.

Build-Date:2021-04-03 08:51:54
Revision:17702
Is-Local-Build:true

Identification: JOSM/1.5 (17702 SVN hu) Windows 10 64-Bit
OS Build number: Windows 10 Pro for Workstations 2009 (19042)
Memory Usage: 1792 MB / 7266 MB (703 MB allocated, but free)
Java version: 1.8.0_281-b09, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920×1200 (scaling 1,00×1,00)
Maximum Screen Size: 1920×1200
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: Cp1250
System property sun.jnu.encoding: Cp1250
Dataset consistency test: No problems found
Last edited 7 months ago by gaben (previous) (diff)

comment:9 Changed 7 months ago by simon04

Milestone: 21.04

comment:10 Changed 6 months ago by simon04

Milestone: 21.0421.05
Owner: changed from team to simon04
Status: newassigned

comment:11 Changed 5 months ago by gaben

Description: modified (diff)

comment:12 Changed 5 months ago by simon04

Milestone: 21.0521.06

comment:13 Changed 5 months ago by gaben

@simon04, do you have plans with this ticket other than revert r15772?

comment:14 Changed 5 months ago by simon04

I don't fully understand why r15772 caused this problem. But reverting is easiest (apart from two revert/merge conflicts)...

comment:15 Changed 5 months ago by simon04

Resolution: fixed
Status: assignedclosed

In 17921/josm:

fix #18697 - Revert "Simplify HistoryViewerPanel.buildTable"

This reverts commit r15772

comment:16 in reply to:  14 Changed 5 months ago by gaben

Replying to simon04:

I don't fully understand why r15772 caused this problem.

Same :D I plan to look into this later this month.

apart from two revert/merge conflicts

IntelliJ's magic wand can do everything 😄

comment:17 Changed 4 months ago by skyper

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

comment:18 Changed 4 months ago by gaben

Resolution: fixed
Status: closedreopened

Okay, here is the current situation.

When I checked in April, reverting the changes (r15772) worked as expected with r17702.

Unfortunately, I ran into this problem again with r17921, so something has changed between [17703:17920] which breaks even the original implementation.

URL:https://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2021-06-02 23:14:11 +0200 (Wed, 02 Jun 2021)
Build-Date:2021-06-03 01:31:07
Revision:17921
Relative:URL: ^/trunk

Identification: JOSM/1.5 (17921 hu) Windows 10 64-Bit
OS Build number: Windows 10 Pro for Workstations 2009 (19043)
Memory Usage: 969 MB / 7266 MB (395 MB allocated, but free)
Java version: 1.8.0_291-b10, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920×1200 (scaling 1.00×1.00)
Maximum Screen Size: 1920×1200
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: Cp1250
System property sun.jnu.encoding: Cp1250
Locale info: hu_HU
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Djava.security.manager, -Djava.security.policy=file:<java.home>\lib\security\javaws.policy, -DtrustProxy=true, -Djnlpx.home=<java.home>\bin, -Djnlpx.origFilenameArg=%UserProfile%\AppData\LocalLow\Sun\Java\Deployment\cache\6.0\31\583aa85f-40eb3c02, -Djnlpx.remove=false, -Djava.util.Arrays.useLegacyMergeSort=true, -Djnlpx.splashport=65125, -Djnlp.application.href=https://josm.openstreetmap.de/download/josm-latest.jnlp, -Djnlpx.jvm=<java.home>\bin\javaw.exe]
Dataset consistency test: No problems found


=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-2 (60) of javawsApplicationThreadGroup
java.lang.IllegalArgumentException: Nem sikerült aktuális elemet beállítani. A jelenlegi 6 verzió nem elérhető az előzményben.
	at org.openstreetmap.josm.gui.history.HistoryBrowserModel.setCurrentPointInTime(HistoryBrowserModel.java:352)
	at org.openstreetmap.josm.gui.history.HistoryBrowserModel.setCurrentPointInTime(HistoryBrowserModel.java:434)
	at org.openstreetmap.josm.gui.history.VersionTable$MouseListener.mousePressed(VersionTable.java:142)
	at java.awt.AWTEventMulticaster.mousePressed(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$500(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$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.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$JavaSecurityAccessImpl.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)

comment:19 Changed 4 months ago by skyper

I notice that even with changes, in history viewer, the object's version number is not raised by one but remains the same as the last version. Is this intended?

comment:20 Changed 4 months ago by Don-vip

Owner: changed from simon04 to team
Status: reopenednew

comment:21 Changed 3 months ago by Don-vip

Milestone: 21.0621.07

comment:22 Changed 3 months ago by Don-vip

Milestone: 21.0721.08

comment:23 Changed 7 weeks ago by Don-vip

Milestone: 21.08

comment:24 Changed 4 weeks ago by gaben

The version number also not getting bumped, noticed in #21362.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as new The owner will remain team.
as The resolution will be set.
to The owner will be changed from team to the specified user.
The owner will change to anonymous
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 team to anonymous.

Add Comment


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

 
Note: See TracTickets for help on using tickets.