﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
12545	Exception when object version higher than in OSM DB	malenki	team	"==== What steps will reproduce the problem?
1. Have in JOSM OSM data of an object with a higher version than the OSM API has. (see attached file)
2. Call the history for this object (press ctrl-h).
3. click on the latest diff/version on the history dialog

==== What is the expected result?

not sure :)

==== What happens instead?

The reported exception.

==== Please provide any additional information below. Attach a screenshot if possible.

Though it is unlikely the described situation may occur often and the too big version number of OSM objects may be erroneous JOSM should behave better than to throw an exception.  

Probable usecase: 
Not sure if it can happen by accident that people use e.g. data from http://opengeofiction.net/ and query the OSM API for OGF objects triggering this bug.

Tested with a blank ~/.josm

{{{
URL:http://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2016-02-19 02:34:18 +0100 (Fri, 19 Feb 2016)
Build-Date:2016-02-19 02:33:01
Revision:9829
Relative:URL: ^/trunk

Identification: JOSM/1.5 (9829 en) Linux Debian GNU/Linux stretch/sid
Memory Usage: 430 MB / 2222 MB (288 MB allocated, but free)
Java version: 1.7.0_95-b00, Oracle Corporation, OpenJDK 64-Bit Server VM
Java package: openjdk-7-jre:amd64-7u95-2.6.4-1
VM arguments: [-Dsun.java2d.opengl=false]
Program arguments: [269193783_-1v.osm, 269193783_+1v.osm, 269193783_+2v.osm, 269193783.osm, del_node]
Dataset consistency test: No problems found


Last errors/warnings:
- E: java.io.IOException: No image files found.
- E: java.lang.IllegalArgumentException: Failed to set current primitive. Current version 4 not available in history.

java.lang.IllegalArgumentException: Failed to set current primitive. Current version 4 not available in history.
	at org.openstreetmap.josm.gui.history.HistoryBrowserModel.setCurrentPointInTime(HistoryBrowserModel.java:336)
	at org.openstreetmap.josm.gui.history.HistoryBrowserModel$VersionTableModel.setCurrentPointInTime(HistoryBrowserModel.java:479)
	at org.openstreetmap.josm.gui.history.VersionTable$MouseListener.mousePressed(VersionTable.java:135)
	at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:280)
	at java.awt.Component.processMouseEvent(Component.java:6513)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3312)
	at java.awt.Component.processEvent(Component.java:6281)
	at java.awt.Container.processEvent(Container.java:2229)
	at java.awt.Component.dispatchEventImpl(Component.java:4872)
	at java.awt.Container.dispatchEventImpl(Container.java:2287)
	at java.awt.Component.dispatchEvent(Component.java:4698)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4489)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
	at java.awt.Container.dispatchEventImpl(Container.java:2273)
	at java.awt.Window.dispatchEventImpl(Window.java:2719)
	at java.awt.Component.dispatchEvent(Component.java:4698)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:747)
	at java.awt.EventQueue.access$300(EventQueue.java:103)
	at java.awt.EventQueue$3.run(EventQueue.java:706)
	at java.awt.EventQueue$3.run(EventQueue.java:704)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:77)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.awt.EventQueue$4.run(EventQueue.java:720)
	at java.awt.EventQueue$4.run(EventQueue.java:718)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:77)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:717)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

}}}
"	defect	closed	normal	17.07	Core	latest	fixed	template_report version history	
