Modify ↓
Opened 15 years ago
Closed 15 years ago
#5018 closed defect (fixed)
DataIntegrityProblemException: Primitive must be part of the dataset
Reported by: | Owned by: | team | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Core | Version: | |
Keywords: | template_report | Cc: |
Description
What steps will reproduce the problem?
- I'm not sure, I was uploading a edited way with points added for more resolution.
- Trying to repeat the same pattern I have tried to download a different zone with josm to make the same patter and I have just received a 500 internal server error, o this can be just a hiccup of the server, don't know.
What is the expected result?
The modified way is uploaded ok.
What happens instead?
Please provide any additional information below. Attach a screenshot if
possible.
Repository Root: http://josm.openstreetmap.de/svn Build-Date: 2010-05-13 01:31:39 Last Changed Author: jttt Revision: 3237 Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b URL: http://josm.openstreetmap.de/svn/trunk Last Changed Date: 2010-05-12 21:37:49 +0200 (Wed, 12 May 2010) Last Changed Rev: 3237 Memory Usage: 178 MB / 764 MB (72 MB allocated, but free) Java version: 1.6.0_20, Sun Microsystems Inc., Java HotSpot(TM) Server VM Operating system: Linux Dataset consistency test: No problems found Plugins: editgpx,openvisible,remotecontrol,slippymap,validator,wmsplugin Plugin wmsplugin (Version: 20891) Plugin editgpx (Version: 19683) Plugin openvisible (Version: 20067) Plugin remotecontrol (Version: 19946) Plugin validator (Version: 20799) Plugin slippymap (Version: 19887) org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Primitive must be part of the dataset: {Node id=731887786 version=1 MV lat=41.040577107405895,lon=-0.8072117833940599} at org.openstreetmap.josm.data.osm.OsmPrimitive.checkDataset(OsmPrimitive.java:229) at org.openstreetmap.josm.data.osm.OsmPrimitive.getReferrers(OsmPrimitive.java:1074) at org.openstreetmap.josm.actions.search.SearchCompiler$Child.match(SearchCompiler.java:582) at org.openstreetmap.josm.actions.search.SearchCompiler$Or.match(SearchCompiler.java:118) at org.openstreetmap.josm.actions.search.SearchAction.getSelection(SearchAction.java:293) at org.openstreetmap.josm.data.osm.Filters.executeFilters(Filters.java:47) at org.openstreetmap.josm.gui.dialogs.FilterDialog.processDatasetEvent(FilterDialog.java:193) at org.openstreetmap.josm.data.osm.event.DataSetListenerAdapter.dataChanged(DataSetListenerAdapter.java:23) at org.openstreetmap.josm.data.osm.event.DataChangedEvent.fire(DataChangedEvent.java:26) at org.openstreetmap.josm.data.osm.event.DatasetEventManager.fireConsolidatedEvents(DatasetEventManager.java:117) at org.openstreetmap.josm.data.osm.event.DatasetEventManager.access$300(DatasetEventManager.java:27) at org.openstreetmap.josm.data.osm.event.DatasetEventManager$1.run(DatasetEventManager.java:187) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209) at java.awt.EventQueue.dispatchEvent(EventQueue.java:597) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178) at java.awt.Dialog$1.run(Dialog.java:1046) at java.awt.Dialog$3.run(Dialog.java:1098) at java.security.AccessController.doPrivileged(Native Method) at java.awt.Dialog.show(Dialog.java:1096) at java.awt.Component.show(Component.java:1563) at java.awt.Component.setVisible(Component.java:1515) at java.awt.Window.setVisible(Window.java:842) at java.awt.Dialog.setVisible(Dialog.java:986) at org.openstreetmap.josm.gui.progress.PleaseWaitProgressMonitor$3.run(PleaseWaitProgressMonitor.java:83) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209) at java.awt.EventQueue.dispatchEvent(EventQueue.java:597) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161) at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Attachments (0)
Change History (7)
comment:1 by , 15 years ago
comment:5 by , 15 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Note:
See TracTickets
for help on using tickets.
This is another variant of #4861 (not a duplicate). This time copy of list of primitives is used so there is no ConcurrentModificationException, but primitives are removed while filtering so when some primitive is about to be filtered, it's no longer part of dataset.
It can be fixed by making Dataset thread safe and locking dataset in case of operations like filtering.