Modify

Opened 4 years ago

Closed 3 years ago

Last modified 3 years ago

#21264 closed defect (irreproducible)

NPE in mapillary.utils.MapViewGeometryUtil.lambda$getSequencePath$0(MapViewGeometryUtil.java:36)

Reported by: hamish.henderson@… Owned by: hamish.henderson@…
Priority: normal Milestone:
Component: Plugin mapillary Version:
Keywords: template_report Cc:

Description

What steps will reproduce the problem?

  1. just going through images, trigger a update and then it get into a loop of saying update->bug report

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: 2021-08-02 19:44:04 +0200 (Mon, 02 Aug 2021)
Build-Date:2021-08-02 18:26:20
Revision:18118
Relative:URL: ^/trunk

Identification: JOSM/1.5 (18118 en) Mac OS X 10.16
OS Build number: macOS 11.5.2 (20G95)
Memory Usage: 815 MB / 1820 MB (176 MB allocated, but free)
Java version: 1.8.0_301-b09, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Look and Feel: com.formdev.flatlaf.FlatDarculaLaf
Screen: Display 69734272 1440×900 (scaling 1.00×1.00) Display 188870274 1600×900 (scaling 1.00×1.00)
Maximum Screen Size: 1600×900
Best cursor sizes: 16×16→16×16, 32×32→32×32
System property file.encoding: UTF-8
System property sun.jnu.encoding: UTF-8
Locale info: en_US
Numbers with default locale: 1234567890 -> 1234567890
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}/Library/Application Support/Oracle/Java/Deployment/cache/6.0/56/1ee8cfb8-6909cbd1, -Djnlpx.remove=false, -Dsun.awt.warmup=true, -Djava.util.Arrays.useLegacyMergeSort=true, -Dmacosx.jnlpx.dock.name=JOSM, -Dmacosx.jnlpx.dock.icon=${HOME}/Library/Application Support/Oracle/Java/Deployment/cache/6.0/25/4c122699-2aa81cf3.icns, -Djnlp.application.href=https://josm.openstreetmap.de/download/josm.jnlp , -Djnlpx.jvm="<java.home>/bin/java"]
Dataset consistency test: No problems found

Plugins:
+ EasyPresets (1623509627)
+ Mapillary (2.0.0-alpha.32-dirty)
+ apache-commons (35524)
+ apache-http (35589)
+ auto_tools (81)
+ changeset-viewer (25)
+ flatlaf (35799)
+ geochat (35640)
+ graphview (35640)
+ jna (35662)
+ markseen (14)
+ osm-obj-info (66)
+ turnrestrictions (35640)
+ utilsplugin2 (35792)

Tagging presets:
+ <josm.userdata>/EasyPresets.xml

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

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

Last errors/warnings:
- 03765.863 E: Unable to get system property: java.security.AccessControlException: access denied ("java.util.PropertyPermission" "java.version" "read")
- 03787.315 E: Unable to get system property: java.security.AccessControlException: access denied ("java.util.PropertyPermission" "os.name" "read")
- 03787.315 E: Unable to get system property: java.security.AccessControlException: access denied ("java.util.PropertyPermission" "os.version" "read")
- 03787.315 E: Unable to get system property: java.security.AccessControlException: access denied ("java.util.PropertyPermission" "java.version" "read")
- 03900.255 E: Unable to get system property: java.security.AccessControlException: access denied ("java.util.PropertyPermission" "os.name" "read")
- 03900.255 E: Unable to get system property: java.security.AccessControlException: access denied ("java.util.PropertyPermission" "os.version" "read")
- 03900.256 E: Unable to get system property: java.security.AccessControlException: access denied ("java.util.PropertyPermission" "java.version" "read")
- 03900.558 E: Unknown detection "construction--barrier--concrete-block"
- 03900.816 E: Unknown detection "construction--barrier--concrete-block"
- 03901.888 E: Handled by bug report queue: java.lang.NullPointerException



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

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-2 (37) of javawsApplicationThreadGroup
java.lang.NullPointerException
	at org.openstreetmap.josm.plugins.mapillary.utils.MapViewGeometryUtil.lambda$getSequencePath$0(MapViewGeometryUtil.java:36)
	at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:174)
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1384)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
	at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
	at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
	at org.openstreetmap.josm.plugins.mapillary.utils.MapViewGeometryUtil.getSequencePath(MapViewGeometryUtil.java:37)
	at org.openstreetmap.josm.plugins.mapillary.gui.layer.MapillaryLayer.drawSequence(MapillaryLayer.java:388)
	at org.openstreetmap.josm.plugins.mapillary.gui.layer.MapillaryLayer.paintWithLock(MapillaryLayer.java:357)
	at org.openstreetmap.josm.plugins.mapillary.gui.layer.MapillaryLayer.paint(MapillaryLayer.java:302)
	at org.openstreetmap.josm.gui.layer.AbstractTileSourceLayer$TileSourcePainter.paint(AbstractTileSourceLayer.java:1998)
	at org.openstreetmap.josm.gui.MapView.paintLayer(MapView.java:468)
	at org.openstreetmap.josm.gui.MapView.drawMapContent(MapView.java:583)
	at org.openstreetmap.josm.gui.MapView.paint(MapView.java:490)
	at javax.swing.JComponent.paintChildren(JComponent.java:889)
	at javax.swing.JComponent.paint(JComponent.java:1065)
	at javax.swing.JComponent.paintToOffscreen(JComponent.java:5210)
	at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1579)
	at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1502)
	at javax.swing.RepaintManager.paint(RepaintManager.java:1272)
	at javax.swing.JComponent._paintImmediately(JComponent.java:5158)
	at javax.swing.JComponent.paintImmediately(JComponent.java:4969)
	at javax.swing.RepaintManager$4.run(RepaintManager.java:831)
	at javax.swing.RepaintManager$4.run(RepaintManager.java:814)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:814)
	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:789)
	at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:738)
	at javax.swing.RepaintManager.access$1200(RepaintManager.java:64)
	at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1732)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
	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.awt.EventQueue.dispatchEvent(EventQueue.java:728)
	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 (7)

comment:1 by taylor.smock, 4 years ago

Cc: github-actions-mapwithai-bot removed
Owner: changed from taylor.smock to hamish.henderson@…
Status: newneedinfo

Do you happen to have an area where this reliably happens?

It looks like something, somewhere, is setting a node in a sequence to null, which shouldn't happen. While I can add a null check fairly easily, I'd prefer to avoid adding a null node in the first place.

in reply to:  1 comment:2 by anonymous, 4 years ago

Replying to taylor.smock:

Do you happen to have an area where this reliably happens?

It looks like something, somewhere, is setting a node in a sequence to null, which shouldn't happen. While I can add a null check fairly easily, I'd prefer to avoid adding a null node in the first place.

I dont currently, i just updated the plugin in this morning. It has happened a few time this morning. The next time i will take note of its location! Thanks

comment:3 by taylor.smock, 4 years ago

Summary: crashes when asking for an updateNPE in mapillary.utils.MapViewGeometryUtil.lambda$getSequencePath$0(MapViewGeometryUtil.java:36)

in reply to:  3 comment:4 by anonymous, 4 years ago

Replying to taylor.smock:

Here is a mapillary node that it crashed on this morning: https://www.mapillary.com/map/im/4566767406720739

comment:5 by taylor.smock, 4 years ago

I think I'm going to have to spend a day mapping to find this. It isn't something that I've been able to reproduce.

comment:6 by taylor.smock, 3 years ago

Resolution: irreproducible
Status: needinfoclosed

I was unable to reproduce.

I did, however, add a check in a location where a null value may be added to nodes. So this may be fixed.

comment:7 by taylor.smock, 3 years ago

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

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain hamish.henderson@….
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.