Modify

Opened 3 years ago

Last modified 20 months ago

#21221 new defect

Relation editor: Preset link: DataIntegrityProblemException: Primitive must be part of the dataset while editing a relation

Reported by: anonymous Owned by: team
Priority: major Milestone:
Component: Core Version: tested
Keywords: template_report data consistency relation editor tagging preset validate async regression Cc: openstreetmap.de@…, bugs1.sbem@…, TrickyFoxy

Description (last modified by skyper)

What steps will reproduce the problem?

[DE]

  1. Ändere Relation 1112557
  2. Klicken auf ein "Merkmal" um den Vorlagendialog zu öffnen

[EN]

  1. Modify relation 1112557
  2. Click on a property to open the preset dialog

What is the expected result?

Vorlagendialog sollte öffnen

Preset dialog should open

What happens instead?

Crash

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

Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2021-08-02 19:44:04 +0200 (Mon, 02 Aug 2021)
Revision:18118
Build-Date:2021-08-02 18:26:20
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (18118 de) Linux Ubuntu 20.04.2 LTS
Memory Usage: 382 MB / 3986 MB (112 MB allocated, but free)
Java version: 14.0.2+12-Ubuntu-120.04, Private Build, OpenJDK 64-Bit Server VM
Look and Feel: javax.swing.plaf.metal.MetalLookAndFeel
Screen: :0.0 1920×1080 (scaling 1.00×1.00) :0.1 1280×1024 (scaling 1.00×1.00) :0.2 1920×1080 (scaling 1.00×1.00)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→16×16, 32×32→32×32
Environment variable LANG: de_DE.UTF-8
System property file.encoding: UTF-8
System property sun.jnu.encoding: UTF-8
Locale info: de_DE
Numbers with default locale: 1234567890 -> 1234567890
Desktop environment: Unity:Unity7:ubuntu
Java ATK Wrapper package: libatk-wrapper-java:all-0.37.1-1
libcommons-logging-java: libcommons-logging-java:all-1.2-2
fonts-noto: fonts-noto:all-20200323-1build1~ubuntu20.04.1
VM arguments: [-Djosm.restart=true, -Djava.net.useSystemProxies=true]
Dataset consistency test: No problems found

Plugins:
+ AddrInterpolation (35640)
+ CustomizePublicTransportStop (35760)
+ DirectUpload (35640)
+ FixAddresses (35640)
+ OpeningHoursEditor (35640)
+ RoadSigns (35640)
+ areaselector (368)
+ austriaaddresshelper (1597341117)
+ buildings_tools (35756)
+ ejml (35458)
+ flatlaf (35799)
+ gson (35458)
+ log4j (35458)
+ mapdust (35543)
+ measurement (35640)
+ osm-obj-info (66)
+ print (35640)
+ reverter (35732)
+ rex (53)
+ tageditor (35640)
+ terracer (35640)
+ turnlanes (35640)
+ turnlanes-tagging (288)
+ turnrestrictions (35640)
+ undelete (35640)
+ utilsplugin2 (35792)

Tagging presets:
+ https://www.openrailwaymap.org/josm-presets/de.zip
+ https://www.openrailwaymap.org/josm-presets/de-signals-eso.zip
+ https://raw.githubusercontent.com/yopaseopor/traffic_signs_preset_JOSM/master/DE.zip
+ https://josm.openstreetmap.de/josmfile?page=Presets/Healthcare&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/OpenStationMap&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Surveillance&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/LaneAttributes&zip=1

Map paint styles:
+ https://www.openrailwaymap.org/styles/josm-additional.zip
- https://www.openrailwaymap.org/styles/electrified.zip
+ https://www.openrailwaymap.org/styles/standard.zip
- https://www.openrailwaymap.org/styles/maxspeed.zip
+ https://www.openrailwaymap.org/styles/signals.zip

Validator rules:
+ https://www.openrailwaymap.org/validator/de-openrailwaymap.validator.mapcss
+ https://josm.openstreetmap.de/josmfile?page=Rules/GermanySpecific&zip=1
+ https://www.openrailwaymap.org/validator/openrailwaymap.validator.mapcss
+ https://josm.openstreetmap.de/josmfile?page=Rules/SuspiciousSwimming_Pool&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/KeepRight&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/OSMLint&zip=1

Last errors/warnings:
- 00117.810 E: Handled by bug report queue: org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Primitive must be part of the dataset: {Relation id=-99751 version=0 VT]}
- 00135.459 E: Handled by bug report queue: org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Primitive must be part of the dataset: {Relation id=-99752 version=0 VT]}



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

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (29) of main
org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Primitive must be part of the dataset: {Relation id=-99752 version=0 VT]}
	at org.openstreetmap.josm.data.osm.OsmPrimitive.checkDataset(OsmPrimitive.java:198)
	at org.openstreetmap.josm.data.osm.OsmPrimitive.referrers(OsmPrimitive.java:707)
	at org.openstreetmap.josm.data.osm.OsmPrimitive.getReferrers(OsmPrimitive.java:733)
	at org.openstreetmap.josm.data.osm.OsmPrimitive.getReferrers(OsmPrimitive.java:739)
	at org.openstreetmap.josm.data.osm.FilterModel.getAffectedPrimitives(FilterModel.java:409)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPresetValidation.applyChangedTags(TaggingPresetValidation.java:81)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPresetValidation.validateAsync(TaggingPresetValidation.java:45)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPreset.lambda$createPanel$2(TaggingPreset.java:385)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPresetItemGuiSupport.lambda$fireItemValueModified$1(TaggingPresetItemGuiSupport.java:141)
	at org.openstreetmap.josm.tools.ListenerList.fireEvent(ListenerList.java:155)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPresetItemGuiSupport.fireItemValueModified(TaggingPresetItemGuiSupport.java:141)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPreset.createPanel(TaggingPreset.java:399)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPreset.showDialog(TaggingPreset.java:528)
	at org.openstreetmap.josm.gui.dialogs.properties.PresetListPanel$LabelMouseAdapter.mouseClicked(PresetListPanel.java:42)
	at java.desktop/java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:278)
	at java.desktop/java.awt.Component.processMouseEvent(Component.java:6639)
	at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342)
	at java.desktop/java.awt.Component.processEvent(Component.java:6401)
	at java.desktop/java.awt.Container.processEvent(Container.java:2263)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5012)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4844)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4919)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4557)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4489)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2764)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4844)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

Attachments (1)

errr.png (278.4 KB ) - added by anonymous 3 years ago.
Reproduction on another day (after system restart)

Download all attachments as: .zip

Change History (28)

in reply to:  description comment:1 by skyper, 3 years ago

Description: modified (diff)
Keywords: data consistency relation added
Owner: changed from team to anonymous
Status: newneedinfo
Last errors/warnings:
- 00117.810 E: Handled by bug report queue: org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Primitive must be part of the dataset: {Relation id=-99751 version=0 VT]}
- 00135.459 E: Handled by bug report queue: org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Primitive must be part of the dataset: {Relation id=-99752 version=0 VT]}


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

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (29) of main
org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Primitive must be part of the dataset: {Relation id=-99752 version=0 VT]}
	at org.openstreetmap.josm.data.osm.OsmPrimitive.checkDataset(OsmPrimitive.java:198)

The problem is with new data added within the session and is the result of an action in advance. What did you do to get this data inconsistency? Is it reproducible? How? Pleases, describe step by step as detailed as possible? Thanks

Das Problem ist mit neu hinzugefügten Daten und ein Resultat einer vorherigen Aktion. Was führt zu dieser Dateninkonsistenz? Ist es reproduzierbar? Wie? Bitte beschreibe Schritt für Schritt, so ausführlich wie möglich. Danke

comment:2 by skyper, 3 years ago

Summary: Error while editing a relationDataIntegrityProblemException: Primitive must be part of the dataset while editing a relation

comment:3 by anonymous, 3 years ago

I successfully reproduced the error by downloading the same area (50.1323261 8.055135 50.1355377 8.059845), opening the relation (112557) dialog and clicked on the heathcare template above the tags

DE, more detailed
Fehler konnte reproduziert werden, indem ich die gleichen Daten noch einmal heruntergeladen habe, die Relation im Relationsdialog geöffnet und auf den Vorlagendialog (Gesundheut (neu)/Einrichtungen/Klinik (neu)) geklickt habe. Statt diesem öffnete sich die Fehlermeldung, der Vorlagendialog öffnete sich nicht. Ich habe diesen Fehler in einer älteren Version bereits bei anderen Relationen erlebt und, ich glaube zumindest, schonmal gemeldet - die Meldung jedoch nicht weiter verfolgt. (Tritt auch bei anderen Relationen auf)

by anonymous, 3 years ago

Attachment: errr.png added

Reproduction on another day (after system restart)

comment:4 by skyper, 3 years ago

Keywords: editor tagging preset validator added
Owner: changed from anonymous to team
Status: needinfonew
Summary: DataIntegrityProblemException: Primitive must be part of the dataset while editing a relationRelation editor: Preset link: DataIntegrityProblemException: Primitive must be part of the dataset while editing a relation

Thanks, I was able to reproduce. (Had to enable tagging preset links in relation editor and direct validation in presets, first)

What steps will reproduce the problem?

  1. Download relation/1112557
  2. Open relation editor
  3. Click on any preset link on top of the relation's tag

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

Seems to be a problem with the direct validation in tagging presets. Changing taggingpreset.validator to false makes the presets work again.

Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2021-08-11 20:32:33 +0200 (Wed, 11 Aug 2021)
Revision:18132
Build-Date:2021-08-12 01:31:02
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (18132 en) Linux Debian GNU/Linux 11 (bullseye)
Java version: 17-ea+19-Debian-1, Debian, OpenJDK 64-Bit Server VM
Dataset consistency test: No problems found

Last errors/warnings:
- 00252.942 E: Handled by bug report queue: org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Primitive must be part of the dataset: {Relation id=-99746 version=0 VT]}



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

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (21) of main
org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Primitive must be part of the dataset: {Relation id=-99746 version=0 VT]}
	at org.openstreetmap.josm.data.osm.OsmPrimitive.checkDataset(OsmPrimitive.java:198)
	at org.openstreetmap.josm.data.osm.OsmPrimitive.referrers(OsmPrimitive.java:707)
	at org.openstreetmap.josm.data.osm.OsmPrimitive.getReferrers(OsmPrimitive.java:733)
	at org.openstreetmap.josm.data.osm.OsmPrimitive.getReferrers(OsmPrimitive.java:739)
	at org.openstreetmap.josm.data.osm.FilterModel.getAffectedPrimitives(FilterModel.java:409)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPresetValidation.applyChangedTags(TaggingPresetValidation.java:81)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPresetValidation.validateAsync(TaggingPresetValidation.java:45)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPreset.lambda$createPanel$2(TaggingPreset.java:385)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPresetItemGuiSupport.lambda$fireItemValueModified$1(TaggingPresetItemGuiSupport.java:141)
	at org.openstreetmap.josm.tools.ListenerList.fireEvent(ListenerList.java:155)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPresetItemGuiSupport.fireItemValueModified(TaggingPresetItemGuiSupport.java:141)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPreset.createPanel(TaggingPreset.java:399)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPreset.showDialog(TaggingPreset.java:528)
	at org.openstreetmap.josm.gui.dialogs.properties.PresetListPanel$LabelMouseAdapter.mouseClicked(PresetListPanel.java:42)
	at java.desktop/java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:278)
	at java.desktop/java.awt.Component.processMouseEvent(Component.java:6622)
	at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3389)
	at java.desktop/java.awt.Component.processEvent(Component.java:6384)
	at java.desktop/java.awt.Container.processEvent(Container.java:2267)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4995)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2325)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4827)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4946)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4584)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2311)
	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2775)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4827)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

=== RUNNING THREADS ===
Thread: RemoteControl HTTP Server (48) of main
java.base@17-ea/sun.nio.ch.Net.accept(Native Method)
java.base@17-ea/sun.nio.ch.NioSocketImpl.accept(NioSocketImpl.java:755)
java.base@17-ea/java.net.ServerSocket.implAccept(ServerSocket.java:672)
java.base@17-ea/java.net.ServerSocket.platformImplAccept(ServerSocket.java:638)
java.base@17-ea/java.net.ServerSocket.implAccept(ServerSocket.java:614)
java.base@17-ea/java.net.ServerSocket.implAccept(ServerSocket.java:571)
java.base@17-ea/java.net.ServerSocket.accept(ServerSocket.java:529)
app//org.openstreetmap.josm.io.remotecontrol.RemoteControlHttpServer.run(RemoteControlHttpServer.java:104)

Thread: Finalizer (3) of system
java.base@17-ea/java.lang.Object.wait(Native Method)
java.base@17-ea/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
java.base@17-ea/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
java.base@17-ea/java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:171)

Thread: ForkJoinPool.commonPool-worker-3 (34) of main
java.base@17-ea/jdk.internal.misc.Unsafe.park(Native Method)
java.base@17-ea/java.util.concurrent.locks.LockSupport.parkUntil(LockSupport.java:410)
java.base@17-ea/java.util.concurrent.ForkJoinPool.awaitWork(ForkJoinPool.java:1718)
java.base@17-ea/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1615)
java.base@17-ea/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)

Thread: HttpClient-1-Worker-2 (62) of main
java.base@17-ea/jdk.internal.misc.Unsafe.park(Native Method)
java.base@17-ea/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:252)
java.base@17-ea/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:401)
java.base@17-ea/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:903)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1060)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1121)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
java.base@17-ea/java.lang.Thread.run(Thread.java:831)

Thread: AWT-EventQueue-0 (21) of main
Stacktrace see above.

Thread: changeset-updater-0 (51) of main
java.base@17-ea/jdk.internal.misc.Unsafe.park(Native Method)
java.base@17-ea/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:252)
java.base@17-ea/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:1672)
java.base@17-ea/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1182)
java.base@17-ea/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1061)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1121)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
java.base@17-ea/java.lang.Thread.run(Thread.java:831)

Thread: GT authority factory disposer (42) of main
java.base@17-ea/java.lang.Object.wait(Native Method)
java.base@17-ea/java.util.TimerThread.mainLoop(Timer.java:563)
java.base@17-ea/java.util.TimerThread.run(Timer.java:516)

Thread: Weak reference cleaner (26) of main
java.base@17-ea/java.lang.Object.wait(Native Method)
java.base@17-ea/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
java.base@17-ea/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
app//org.openstreetmap.josm.tools.ListenableWeakReference.clean(ListenableWeakReference.java:60)
app//org.openstreetmap.josm.tools.ListenableWeakReference$$Lambda$395/0x000000080138abd0.run(Unknown Source)
java.base@17-ea/java.lang.Thread.run(Thread.java:831)

Thread: image-fetcher-0 (39) of main
java.base@17-ea/jdk.internal.misc.Unsafe.park(Native Method)
java.base@17-ea/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341)
java.base@17-ea/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:506)
java.base@17-ea/java.util.concurrent.ForkJoinPool.unmanagedBlock(ForkJoinPool.java:3455)
java.base@17-ea/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3426)
java.base@17-ea/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1623)
java.base@17-ea/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:435)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1061)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1121)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
java.base@17-ea/java.lang.Thread.run(Thread.java:831)

Thread: FileSystemWatchService (24) of main
java.base@17-ea/sun.nio.fs.LinuxWatchService.poll(Native Method)
java.base@17-ea/sun.nio.fs.LinuxWatchService$Poller.run(LinuxWatchService.java:314)
java.base@17-ea/java.lang.Thread.run(Thread.java:831)

Thread: RemoteControl HTTP Server (49) of main
java.base@17-ea/sun.nio.ch.Net.accept(Native Method)
java.base@17-ea/sun.nio.ch.NioSocketImpl.accept(NioSocketImpl.java:755)
java.base@17-ea/java.net.ServerSocket.implAccept(ServerSocket.java:672)
java.base@17-ea/java.net.ServerSocket.platformImplAccept(ServerSocket.java:638)
java.base@17-ea/java.net.ServerSocket.implAccept(ServerSocket.java:614)
java.base@17-ea/java.net.ServerSocket.implAccept(ServerSocket.java:571)
java.base@17-ea/java.net.ServerSocket.accept(ServerSocket.java:529)
app//org.openstreetmap.josm.io.remotecontrol.RemoteControlHttpServer.run(RemoteControlHttpServer.java:104)

Thread: Reference Handler (2) of system
java.base@17-ea/java.lang.ref.Reference.waitForReferencePendingList(Native Method)
java.base@17-ea/java.lang.ref.Reference.processPendingReferences(Reference.java:253)
java.base@17-ea/java.lang.ref.Reference$ReferenceHandler.run(Reference.java:215)

Thread: Java2D Disposer (17) of system
java.base@17-ea/java.lang.Object.wait(Native Method)
java.base@17-ea/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
java.base@17-ea/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
java.desktop@17-ea/sun.java2d.Disposer.run(Disposer.java:144)
java.base@17-ea/java.lang.Thread.run(Thread.java:831)

Thread: TimerQueue (23) of system
java.base@17-ea/jdk.internal.misc.Unsafe.park(Native Method)
java.base@17-ea/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:252)
java.base@17-ea/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:1672)
java.base@17-ea/java.util.concurrent.DelayQueue.take(DelayQueue.java:229)
java.desktop@17-ea/javax.swing.TimerQueue.run(TimerQueue.java:171)
java.base@17-ea/java.lang.Thread.run(Thread.java:831)

Thread: message-notifier-0 (50) of main
java.base@17-ea/jdk.internal.misc.Unsafe.park(Native Method)
java.base@17-ea/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:252)
java.base@17-ea/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:1672)
java.base@17-ea/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1182)
java.base@17-ea/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1061)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1121)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
java.base@17-ea/java.lang.Thread.run(Thread.java:831)

Thread: main-worker-0 (20) of main
java.base@17-ea/jdk.internal.misc.Unsafe.park(Native Method)
java.base@17-ea/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341)
java.base@17-ea/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:506)
java.base@17-ea/java.util.concurrent.ForkJoinPool.unmanagedBlock(ForkJoinPool.java:3455)
java.base@17-ea/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3426)
java.base@17-ea/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1623)
java.base@17-ea/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:435)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1061)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1121)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
java.base@17-ea/java.lang.Thread.run(Thread.java:831)

Thread: Timer-0 (44) of main
java.base@17-ea/java.lang.Object.wait(Native Method)
java.base@17-ea/java.util.TimerThread.mainLoop(Timer.java:563)
java.base@17-ea/java.util.TimerThread.run(Timer.java:516)

Thread: ForkJoinPool.commonPool-worker-4 (63) of main
java.base@17-ea/jdk.internal.misc.Unsafe.park(Native Method)
java.base@17-ea/java.util.concurrent.locks.LockSupport.parkUntil(LockSupport.java:410)
java.base@17-ea/java.util.concurrent.ForkJoinPool.awaitWork(ForkJoinPool.java:1718)
java.base@17-ea/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1615)
java.base@17-ea/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)

Thread: Common-Cleaner (11) of InnocuousThreadGroup
java.base@17-ea/java.lang.Object.wait(Native Method)
java.base@17-ea/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
java.base@17-ea/jdk.internal.ref.CleanerImpl.run(CleanerImpl.java:140)
java.base@17-ea/java.lang.Thread.run(Thread.java:831)
java.base@17-ea/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:161)

Thread: Timer-2 (58) of main
java.base@17-ea/java.lang.Object.wait(Native Method)
java.base@17-ea/java.lang.Object.wait(Object.java:338)
java.base@17-ea/java.util.TimerThread.mainLoop(Timer.java:537)
java.base@17-ea/java.util.TimerThread.run(Timer.java:516)

Thread: Signal Dispatcher (4) of system

Thread: File Watcher (25) of main
java.base@17-ea/jdk.internal.misc.Unsafe.park(Native Method)
java.base@17-ea/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341)
java.base@17-ea/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:506)
java.base@17-ea/java.util.concurrent.ForkJoinPool.unmanagedBlock(ForkJoinPool.java:3455)
java.base@17-ea/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3426)
java.base@17-ea/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1623)
java.base@17-ea/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:485)
java.base@17-ea/java.util.concurrent.LinkedBlockingDeque.take(LinkedBlockingDeque.java:673)
java.base@17-ea/sun.nio.fs.AbstractWatchService.take(AbstractWatchService.java:118)
app//org.openstreetmap.josm.io.FileWatcher.processEvents(FileWatcher.java:120)
app//org.openstreetmap.josm.io.FileWatcher$$Lambda$349/0x00000008013073b0.run(Unknown Source)
java.base@17-ea/java.lang.Thread.run(Thread.java:831)

Thread: AWT-Shutdown (22) of system
java.base@17-ea/java.lang.Object.wait(Native Method)
java.base@17-ea/java.lang.Object.wait(Object.java:338)
java.desktop@17-ea/sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:291)
java.base@17-ea/java.lang.Thread.run(Thread.java:831)

Thread: ForkJoinPool.commonPool-worker-2 (33) of main
java.base@17-ea/jdk.internal.misc.Unsafe.park(Native Method)
java.base@17-ea/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341)
java.base@17-ea/java.util.concurrent.ForkJoinPool.awaitWork(ForkJoinPool.java:1716)
java.base@17-ea/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1615)
java.base@17-ea/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)

Thread: WeakCollectionCleaner (43) of main
java.base@17-ea/java.lang.Object.wait(Native Method)
java.base@17-ea/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
java.base@17-ea/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
org.geotools.util.WeakCollectionCleaner.run(WeakCollectionCleaner.java:65)

Thread: Notification Thread (12) of system

Thread: Timer-1 (54) of main
java.base@17-ea/java.lang.Object.wait(Native Method)
java.base@17-ea/java.util.TimerThread.mainLoop(Timer.java:563)
java.base@17-ea/java.util.TimerThread.run(Timer.java:516)

Thread: HttpClient-1-SelectorManager (28) of main
java.base@17-ea/sun.nio.ch.EPoll.wait(Native Method)
java.base@17-ea/sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:118)
java.base@17-ea/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:129)
java.base@17-ea/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
platform/java.net.http@17-ea/jdk.internal.net.http.HttpClientImpl$SelectorManager.run(HttpClientImpl.java:885)

Thread: Map Status Collector (64) of main
java.base@17-ea/jdk.internal.misc.Unsafe.park(Native Method)
java.base@17-ea/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341)
java.base@17-ea/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:506)
java.base@17-ea/java.util.concurrent.ForkJoinPool.unmanagedBlock(ForkJoinPool.java:3455)
java.base@17-ea/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3426)
java.base@17-ea/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1623)
java.base@17-ea/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:435)
app//org.openstreetmap.josm.gui.MapStatus$Collector.run(MapStatus.java:438)
java.base@17-ea/java.lang.Thread.run(Thread.java:831)

Thread: HttpClient-1-Worker-1 (30) of main
java.base@17-ea/jdk.internal.misc.Unsafe.park(Native Method)
java.base@17-ea/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:252)
java.base@17-ea/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:401)
java.base@17-ea/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:903)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1060)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1121)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
java.base@17-ea/java.lang.Thread.run(Thread.java:831)

Thread: styled-map-renderer-1 (65) of main
java.base@17-ea/jdk.internal.misc.Unsafe.park(Native Method)
java.base@17-ea/java.util.concurrent.locks.LockSupport.parkUntil(LockSupport.java:410)
java.base@17-ea/java.util.concurrent.ForkJoinPool.awaitWork(ForkJoinPool.java:1718)
java.base@17-ea/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1615)
java.base@17-ea/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)

Thread: JCS-ElementEventQueue-Thread-1 (41) of main
java.base@17-ea/jdk.internal.misc.Unsafe.park(Native Method)
java.base@17-ea/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341)
java.base@17-ea/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:506)
java.base@17-ea/java.util.concurrent.ForkJoinPool.unmanagedBlock(ForkJoinPool.java:3455)
java.base@17-ea/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3426)
java.base@17-ea/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1623)
java.base@17-ea/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:435)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1061)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1121)
java.base@17-ea/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
java.base@17-ea/java.lang.Thread.run(Thread.java:831)

Thread: AWT-XAWT (18) of system
java.desktop@17-ea/sun.awt.X11.XToolkit.waitForEvents(Native Method)
java.desktop@17-ea/sun.awt.X11.XToolkit.run(XToolkit.java:679)
java.desktop@17-ea/sun.awt.X11.XToolkit.run(XToolkit.java:643)
java.base@17-ea/java.lang.Thread.run(Thread.java:831)

Thread: DestroyJavaVM (52) of main

comment:5 by skyper, 3 years ago

Keywords: regression added

I can close the gap for compromising changes to be between r17978 and r17992 as r17977 does work.
Maybe a regression of r17981.

comment:6 by Don-vip, 3 years ago

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

comment:7 by marcello@…, 3 years ago

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

comment:8 by marcello@…, 3 years ago

This is a limitation of the current implementation of the preset system. The relation editor always works on a copy of a relation (or on a new relation not yet in the dataset). The preset system always works on the dataset. Opening a preset from the relation dialog cannot work in the current implementation.

Also, if you open a preset dialog from the relation editor you expect your preset edits to go to the tag table in the relation editor. Instead they would go directly to the dataset, creating a conflict, and the tag table stays unchanged. If you cancel the relation editor your dataset still stays edited. All this would be unsatisfactory even if we fixed the exception.

Instead I've been working on a fix to make the whole preset system go through a data handler. You can connect the data handler to an OSM dataset or to any other key/value store, eg. the TagTable in the relation editor.

comment:9 by gaben, 3 years ago

I have encountered the same problem, same stack trace.

comment:10 by gaben, 3 years ago

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

in reply to:  8 comment:11 by gaben, 2 years ago

Replying to marcello@…:

Instead I've been working on a fix to make the whole preset system go through a data handler. You can connect the data handler to an OSM dataset or to any other key/value store, eg. the TagTable in the relation editor.

What's the status of the patch?

comment:12 by marcello@…, 2 years ago

The patch is under: #21851. It is a big one, so reviews are welcome.

comment:13 by Klumbumbus, 2 years ago

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

comment:14 by Klumbumbus, 2 years ago

(I just got the same error while clicking on the preset link in a public transport relation.)

in reply to:  14 comment:15 by skyper, 2 years ago

Replying to Klumbumbus:

(I just got the same error while clicking on the preset link in a public transport relation.)

Yes, see my previous comment 4:

Replying to skyper:

Seems to be a problem with the direct validation in tagging presets. Changing taggingpreset.validator to false makes the presets work again.

comment:16 by gaben, 2 years ago

I think both #21654 and #21829 duplicate of this ticket.

comment:17 by skyper, 2 years ago

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

comment:18 by skyper, 2 years ago

Cc: openstreetmap.de@… added

comment:19 by skyper, 23 months ago

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

comment:20 by skyper, 23 months ago

Cc: bugs1.sbem@… added

comment:21 by skyper, 23 months ago

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

comment:22 by skyper, 23 months ago

Cc: TrickyFoxy added

comment:23 by skyper, 23 months ago

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

comment:24 by skyper, 23 months ago

See #20044 for a problem (now hidden) with preset links from relation dialog before the last changes.

comment:25 by skyper, 23 months ago

Priority: normalmajor

comment:26 by skyper, 23 months ago

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

comment:27 by skyper, 20 months ago

Keywords: validate async added; validator removed

Modify Ticket

Change Properties
Set your email in Preferences
Action
as new The owner will remain team.
as The resolution will be set. Next status will be 'closed'.
to The owner will be changed from team to the specified user.
Next status will be 'needinfo'. The owner will be changed from team to anonymous.
as duplicate The resolution will be set to duplicate. Next status will be 'closed'. The specified ticket will be cross-referenced with this ticket.
The owner will be changed from team to anonymous. Next status will be 'assigned'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.