Modify

Opened 2 months ago

Closed 2 months ago

#19030 closed defect (fixed)

Validator layer is not refreshed

Reported by: GerdP Owned by: team
Priority: normal Milestone: 20.03
Component: Core validator Version: latest
Keywords: template_report regression Cc:

Description (last modified by GerdP)

What steps will reproduce the problem?

  1. Download way 84774140 (a simple building)
  2. Run Validator to make sure no warning is produced
  3. Split the way
  4. Run Validator, note that two warnings for unclosed ways are produced and rendered
  5. Undo split, note that validator tree still shows one warning and validator layer doesn't change
  6. Run Validator, note that no warning is shown in tree but validator layer still shows them
  7. Move mouse close to one of the split nodes, note that validator layer finally is refreshed

What is the expected result?

Refresh of validator layer should happen when validator tree changes

What happens instead?

Refresh of validator layer sometimes happens only when mouse move - or maybe other actions - trigger it

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

Doesn't happen with tested version

Build-Date:2020-04-04 09:35:19
Revision:16223
Is-Local-Build:true

Identification: JOSM/1.5 (16223 SVN en) Windows 10 64-Bit
OS Build number: Windows 10 Home 1903 (18362)
Memory Usage: 743 MB / 1753 MB (130 MB allocated, but free)
Java version: 1.8.0_191-b12, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Screen: \Display0 1920x1080
Maximum Screen Size: 1920x1080
VM arguments: [-agentlib:jdwp=transport=dt_socket,suspend=y,address=localhost:54868, -ea, -Dfile.encoding=UTF-8]
Program arguments: [--debug]
Dataset consistency test: No problems found

Plugins:
+ OpeningHoursEditor (35405)
+ PolygonCutOut (v0.7)
+ apache-commons (35362)
+ buildings_tools (35405)
+ continuosDownload (91)
+ ejml (35313)
+ geotools (35169)
+ jaxb (35092)
+ jts (35122)
+ merge-overlap (35248)
+ o5m (35248)
+ opendata (35405)
+ pbf (35248)
+ poly (35248)
+ reverter (35407)
+ undelete (35396)
+ utilsplugin2 (35405)

Validator rules:
+ c:\josm\core\resources\data\validator\combinations.mapcss

Last errors/warnings:
- E: org.openstreetmap.josm.io.OsmApiException: ResponseCode=400, Error Header=<You requested too many nodes (limit is 50000). Either request a smaller area, or use planet.osm>
- E: Bad Request - <html>The OSM server 'api.openstreetmap.org' reported a bad request.<br><br>The area you tried to download is too big or your request was too large.<br>Either request a smaller area or use an export file provided by the OSM community.</html>

Attachments (1)

19030.patch (1.0 KB) - added by GerdP 2 months ago.
call ValidatorLayer::invalidate also when no errors are found

Download all attachments as: .zip

Change History (11)

comment:1 Changed 2 months ago by GerdP

Description: modified (diff)

comment:2 Changed 2 months ago by GerdP

josm-snapshot-16102.jar shows the error, josm-snapshot-16087.jar is still OK

comment:3 Changed 2 months ago by GerdP

Problem disappears when I revert changes from r16091.

Changed 2 months ago by GerdP

Attachment: 19030.patch added

call ValidatorLayer::invalidate also when no errors are found

comment:4 Changed 2 months ago by GerdP

Attached patch fixes the problem but leaves an empty error layer. Before we can close the layer we have to check all validator trees.

comment:5 Changed 2 months ago by Don-vip

Milestone: 20.03

comment:6 Changed 2 months ago by Don-vip

Component: CoreCore validator
Keywords: validator removed

comment:7 Changed 2 months ago by Don-vip

Shouldn't the invalidate call be made after the initializeErrorLayer call?

comment:8 Changed 2 months ago by GerdP

I think it doesn't matter.

comment:9 Changed 2 months ago by GerdP

The constructor of Layer calls invalidate() by calling setName()

comment:10 Changed 2 months ago by GerdP

Resolution: fixed
Status: newclosed

In 16227/josm:

fix #19030: Validator layer is not refreshed

  • call ValidatorLayer::invalidate also when no errors are found so that a previously found error is no longer rendered

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain team.
as The resolution will be set.
The resolution will be deleted.

Add Comment


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

 
Note: See TracTickets for help on using tickets.