Modify

Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#20690 closed defect (fixed)

Changeset comments off-by-one error

Reported by: zelonewolf@… Owned by: team
Priority: critical Milestone: 21.08
Component: Core Version:
Keywords: upload changeset comment Cc:

Description (last modified by Don-vip)

As of JOSM 17682, I am finding that instead of the changeset comment I entered, JOSM is posting either 1) the previous changeset's comment or 2) no comment.

Examples:
https://www.openstreetmap.org/changeset/101916258
https://www.openstreetmap.org/changeset/101888396

This seems to have somehow been introduced between the latest production JOSM and 17682

Attachments (2)

comment_1.png (35.7 KB ) - added by zelonewolf@… 3 years ago.
Example, part 1: comment entered
comment_2.png (40.8 KB ) - added by zelonewolf@… 3 years ago.
Example, part 2: wrong comment shown in changeset settings

Download all attachments as: .zip

Change History (45)

comment:1 by skyper, 3 years ago

A complete status report, please.

Thanks for your report, however your ticket is incomplete and therefore not helpful in its current form.

Please add all needed information according to this list:

  • The required parts of the Status Report from your JOSM.
  • Describe what behaviour you expected.
  • Describe what did happen instead.
  • Describe if and how the issue is reproducible.
  • Add any relevant information like error messages or screenshots.

To ensure that all technical relevant information is contained, create new tickets by clicking in JOSMs Main Menu on Helpsource:trunk/resources/images/bug.svg Report Bug.


comment:2 by zelonewolf@…, 3 years ago

What steps will reproduce the problem?

  1. Upload a changeset with comment "AAA"
  2. Upload a changeset with comment "BBB"

What is the expected result?

Two changesets, with comment "AAA" and "BBB" respectively.

What happens instead?

First changeset uploads with (value of changeset comment prior to "AAA")
Second changeset uploads with "AAA" as the comment

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-03-28 17:19:35 +0200 (Sun, 28 Mar 2021)
Build-Date:2021-03-28 15:22:29
Revision:17682
Relative:URL: ^/trunk

Identification: JOSM/1.5 (17682 en) Windows 10 64-Bit
OS Build number: Windows 10 Home 1909 (18363)
Memory Usage: 20975 MB / 43691 MB (9972 MB allocated, but free)
Java version: 1.8.0_281-b09, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920×1080 (scaling 1.00×1.00)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→32×32, 32×32→32×32
Dataset consistency test: No problems found

Plugins:
+ FastDraw (35640)
+ ImproveOsm (206)
+ ImproveWay (29)
+ Mapillary (1.5.37.3)
+ PolygonCutOut (v0.7)
+ RelationDissolve (0.2.0)
+ apache-commons (35524)
+ apache-http (35589)
+ changeset-viewer (25)
+ colorscheme (35643)
+ conflation (0.6.6)
+ contourmerge (v0.1.6)
+ dataimport (35640)
+ ejml (35458)
+ ext_tools (35640)
+ geotools (35458)
+ imagery_offset_db (35640)
+ jaxb (35543)
+ jna (35662)
+ jts (35458)
+ log4j (35458)
+ measurement (35640)
+ merge-overlap (35640)
+ opendata (35640)
+ pbf (35720)
+ photo_geotagging (35715)
+ polygon-cleaner-josm-plugin-dev (6d92384)
+ reverter (35688)
+ todo (30306)
+ turnrestrictions (35640)
+ utilsplugin2 (35691)
+ waydownloader (35640)
+ wikipedia (1.1.4)

Last errors/warnings:
- 25880.603 W: java.net.UnknownHostException: c.tile.openstreetmap.org
- 25916.329 E: org.openstreetmap.josm.io.OsmTransferException: java.net.NoRouteToHostException: No route to host: connect. Cause: java.net.NoRouteToHostException: No route to host: connect
- 25916.338 E: Network exception - <html>Failed to open a connection to the remote server<br>'https://api.openstreetmap.org/api/0.6/'.<br>Please check your internet connection.</html>
- 26552.102 W: JCS - Silent failure during download: https://b.tile.openstreetmap.org/16/10490/25389.png
- 26715.104 W: JCS - Silent failure during download: https://b.tile.openstreetmap.org/14/4704/6236.png
- 58921.155 W: org.openstreetmap.josm.data.osm.search.SearchParseError: Unexpected token: <equals>
- 58965.676 W: JCS - Silent failure during download: https://c.tile.openstreetmap.org/12/1859/1863.png
- 58977.105 W: JCS - Silent failure during download: https://b.tile.openstreetmap.org/11/932/933.png
- 59208.488 E: Error header: The changeset 101916258 was closed at 2021-03-29 12:01:33 UTC
- 59232.048 E: Error header: The changeset 101916282 was closed at 2021-03-29 12:01:57 UTC

comment:3 by GerdP, 3 years ago

Can this happen when a changeset is not closed?

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

Replying to GerdP:

Can this happen when a changeset is not closed?

Mmh, usually, it is/was the opposite, the later commits override the former comment. As nothing else gets fill, maybe, a missing enter after typing the comment.

comment:5 by zelonewolf@…, 3 years ago

I just submitted a changeset with the comment "adding lake tagging", and was very careful to press "enter". Result was an *empty* changeset comment:
https://www.openstreetmap.org/changeset/101938517

comment:6 by zelonewolf@…, 3 years ago

Next, I submitted this changeset with the comment "Add pond tagging" (and definitely hit enter), and the following changeset:
https://www.openstreetmap.org/changeset/101938838
...had the lake comment I submitted for the prior change.

comment:7 by zelonewolf@…, 3 years ago

After falling back to 17580, I submitted a changeset and it worked normally.

comment:8 by GerdP, 3 years ago

I doubt that the JOSM version is relevant here. Your log shows that errors were reported and I assume that JOSM doesn't handle them correctly.

comment:9 by zelonewolf@…, 3 years ago

Confirmed, on a clean start of of #17682, the issue did indeed resolve. I think the reported error was what I reported in #20679 so hopefully this is just a freak occurrence.

comment:10 by zelonewolf@…, 3 years ago

Meant to say, on a clean start of version 17682.

comment:11 by zelonewolf@…, 3 years ago

Hi, just adding a note to say that I'm still experiencing this issue intermittently on 17702, below is the error report.

URL:https://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2021-04-01 23:17:01 +0200 (Thu, 01 Apr 2021)
Build-Date:2021-04-01 21:46:03
Revision:17702
Relative:URL: ^/trunk

Identification: JOSM/1.5 (17702 en) Windows 10 64-Bit
OS Build number: Windows 10 Home 1909 (18363)
Memory Usage: 19663 MB / 43691 MB (12646 MB allocated, but free)
Java version: 1.8.0_281-b09, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920×1080 (scaling 1.00×1.00)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: Cp1252
System property sun.jnu.encoding: Cp1252
Dataset consistency test: No problems found

Plugins:
+ FastDraw (35640)
+ ImproveOsm (206)
+ ImproveWay (29)
+ Mapillary (1.5.37.3)
+ PolygonCutOut (v0.7)
+ RelationDissolve (0.2.0)
+ apache-commons (35524)
+ apache-http (35589)
+ changeset-viewer (25)
+ colorscheme (35643)
+ conflation (0.6.6)
+ contourmerge (v0.1.6)
+ dataimport (35640)
+ ejml (35458)
+ ext_tools (35640)
+ geotools (35458)
+ imagery_offset_db (35640)
+ jaxb (35543)
+ jna (35662)
+ jts (35458)
+ log4j (35458)
+ measurement (35640)
+ merge-overlap (35640)
+ opendata (35640)
+ pbf (35720)
+ photo_geotagging (35715)
+ polygon-cleaner-josm-plugin-dev (6d92384)
+ reverter (35688)
+ todo (30306)
+ turnrestrictions (35640)
+ utilsplugin2 (35691)
+ waydownloader (35640)
+ wikipedia (1.1.4)

Last errors/warnings:
- 12234.326 E: Error header: Precondition failed: Node 866861700 is still used by ways 73075661,73934000.
- 12234.445 E: org.openstreetmap.josm.io.OsmApiException: ResponseCode=412, Error Header=<Precondition failed: Node 866861700 is still used by ways 73075661,73934000.>
- 12234.449 E: Object still in use - <html><strong>Failed</strong> to delete <strong>node 866861700</strong>. It is still referred to by ways [73075661, 73934000].<br>Please load the ways, remove the reference to the node, and upload again.<br><br>Click <strong>Prepare conflict resolution</strong> to load them now.<br>If necessary JOSM will create conflicts which you can resolve in the Conflict Resolution Dialog.</html>
- 12246.567 E: Error header: Precondition failed: Node 868190547 is still used by ways 73179804,73198059.
- 12246.681 E: org.openstreetmap.josm.io.OsmApiException: ResponseCode=412, Error Header=<Precondition failed: Node 868190547 is still used by ways 73179804,73198059.>
- 12246.685 E: Object still in use - <html><strong>Failed</strong> to delete <strong>node 868190547</strong>. It is still referred to by ways [73179804, 73198059].<br>Please load the ways, remove the reference to the node, and upload again.<br><br>Click <strong>Prepare conflict resolution</strong> to load them now.<br>If necessary JOSM will create conflicts which you can resolve in the Conflict Resolution Dialog.</html>
- 21700.965 W: javax.net.ssl.SSLException: java.net.SocketException: Socket closed. Cause: javax.net.ssl.SSLException: java.net.SocketException: Socket closed. Cause: java.net.SocketException: Socket closed
- 21717.381 E: java.nio.file.FileSystemException: %UserProfile%\Downloads\ca4-full.osm: The process cannot access the file because it is being used by another process.
- 21717.384 E: java.nio.file.FileSystemException: %UserProfile%\Downloads\ca4-full.osm: The process cannot access the file because it is being used by another process.
- 21727.075 E: java.nio.file.FileSystemException: %UserProfile%\Downloads\ca4-full.osm: The process cannot access the file because it is being used by another process.

comment:12 by miken, 3 years ago

I see this also but haven't found a confirmed way to reproduce. It's more likely when JOSM is open long enough at the main menu to try to clear the changeset comment. I extended upload.comment.max-age to be more than a day as a workaround but it still happens.

comment:13 by GerdP, 3 years ago

Do any of you use a special setting regarding uploads? There are some options which may have an influence here, for example you can keep the changeset open and later "upload to an existing changeset". There are also options reg. the "upload strategy".
The preference settings are upload.changeset.close and osm-server.upload-strategy.chunk-size.
Please check if you use non-default values for them.

comment:14 by simon04, 3 years ago

Keywords: changeset comment upload dialog history combo added

Related: #19630, #18101, #20604

comment:15 by zelonewolf@…, 3 years ago

Keywords: changeset comment upload dialog history combo removed

Regarding special settings - yes, I use the "upload data in chunks" option.

comment:16 by miken, 3 years ago

I'm also using osm-server upload-strategy as chunked , with an osm-server upload-strategy.chunk-size of 500. I found this was useful in the old days to improve upload success but may not be needed any more.

comment:17 by ottwiz, 3 years ago

I have the same problem, i just uploaded my changeset with a kind of an elaborated comment, but what I got is (no comment). https://www.openstreetmap.org/changeset/104210394 <----- This is the particular changeset. JOSM 17835.

comment:18 by skyper, 3 years ago

@ottwiz:
Please, tell us if you used any "special" upload strategy, like uploading in chunks or leaving the CS open. Thanks.

comment:19 by ottwiz, 3 years ago

Well, I was uploading in chunks aka Chunk size:2000, and my changeset took like 5 batch to upload (since i had like 11k changes).

comment:20 by Friendly_Ghost, 3 years ago

Hello. I'm having the same issue of comments being off by one changeset.
Example: https://www.openstreetmap.org/changeset/104655642

Changesets take the comments I've written for the previous ones.

I'm using stable version 17833 for Windows (Windows 10).

comment:21 by eginhard, 3 years ago

This is an extremely annoying issue that I encounter regularly. Here are just a few examples where I didn't catch it by verifying the changeset tags (but many other times I noticed and corrected it manually in the changeset tags):
https://www.openstreetmap.org/changeset/100007010
https://www.openstreetmap.org/changeset/104617999
https://www.openstreetmap.org/changeset/104695240
https://www.openstreetmap.org/changeset/104706844

Versions include at least 17428, 17702, 17833 on Ubuntu with default upload settings.

comment:22 by simon04, 3 years ago

In 17894/josm:

see #20690 - Upload dialog: add DocumentListener for changeset comments as an attempt to fix comments off-by-one error

comment:23 by simon04, 3 years ago

Since we haven't found a reliable way to reproduce this bug, I did some guessing. Please report if r17894 improves the situation.

comment:24 by simon04, 3 years ago

In 17898/josm:

fix #20887, see #20690 - Upload dialog: fix IllegalStateException: Attempt to mutate in notification

comment:25 by eginhard, 3 years ago

I still observe the same behaviour in 17915: For example, https://www.openstreetmap.org/changeset/105698750 has the same comment as the previous https://www.openstreetmap.org/changeset/105698674 although I explicitly used a different one.

The workaround of manually checking and fixing the comment and source tags in the Settings tab still works.

comment:26 by skyper, 3 years ago

@eginhard:
What operating system do you use? Could you, please, post a status report, using Report Bug under Help menu in JOSM and copy & paste the status report. Thanks a lot.

comment:27 by eginhard, 3 years ago

I use Ubuntu 20.10. My status report:

Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2021-05-27 19:45:08 +0200 (Thu, 27 May 2021)
Revision:17915
Build-Date:2021-05-28 01:31:01
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (17915 en_GB) Linux Ubuntu 20.10
Memory Usage: 1110 MB / 3932 MB (342 MB allocated, but free)
Java version: 11.0.11+9-Ubuntu-0ubuntu2.20.10, Ubuntu, OpenJDK 64-Bit Server VM
Look and Feel: com.formdev.flatlaf.FlatDarculaLaf
Screen: :0.0 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: en_GB.UTF-8
System property file.encoding: UTF-8
System property sun.jnu.encoding: UTF-8
Locale info: en_GB
Numbers with default locale: 1234567890 -> 1234567890
Desktop environment: ubuntu:GNOME
Java package: openjdk-11-jre:amd64-11.0.11+9-0ubuntu2~20.10
Java ATK Wrapper package: libatk-wrapper-java:all-0.38.0-1
libcommons-logging-java: libcommons-logging-java:all-1.2-2
fonts-noto: fonts-noto:all-20200323-1build1
VM arguments: [--add-modules=java.scripting,java.sql, -Djosm.restart=true, -Djava.net.useSystemProxies=true]
Dataset consistency test: No problems found

Plugins:
+ ColorPlugin (1537115529)
+ EasyPresets (1616852928)
+ ImproveOsm (211)
+ MakeParallel (v1.1.0)
+ OpeningHoursEditor (35640)
+ SimplifyArea (35640)
+ auto_tools (79)
+ buildings_tools (35756)
+ changeset-viewer (25)
+ flatlaf (35734)
+ imagery_offset_db (35640)
+ openqa (0.2.2)
+ reltoolbox (35640)
+ reverter (35732)
+ tageditor (35640)
+ todo (30306)
+ turnlanes-tagging (288)
+ utilsplugin2 (35691)

Tagging presets:
+ https://josm.openstreetmap.de/josmfile?page=Presets/public_bookcase&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/SkiingTrail&zip=1
+ https://raw.githubusercontent.com/yopaseopor/traffic_signs_preset_JOSM/master/CH.zip
+ https://josm.openstreetmap.de/josmfile?page=Presets/Trees&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/PublicTransportGtfs&zip=1

Map paint styles:
+ https://josm.openstreetmap.de/josmfile?page=Styles/PublicTransport&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/iD&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/FixmeAndNote&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/Incline&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Lane_and_Road_Attributes&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Modified&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/ParkingLanes&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/sac_scale&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/SidewalksAndFootways&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/SimpleBuildingTags&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/SimpleRoofTags&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Noname&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Coloured_Streets&zip=1

Validator rules:
+ https://github.com/Jungle-Bus/transport_mapcss/raw/gh-pages/transport.validator.zip
+ https://josm.openstreetmap.de/josmfile?page=Rules/KeepRight&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/OSMLint&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/PublicTransportGtfs&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/QAToolInspiredValidations&zip=1

Last errors/warnings:
- 00019.331 W: javax.imageio.IIOException: Caught exception during read:. Cause: java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1
- 00019.332 E: Failed to locate image 'traffic_signs_presets/tunnel.png'
- 00019.333 W:  Tunnel: Could not get presets icon traffic_signs_presets/tunnel.png

comment:29 by Bjoeni, 3 years ago

And also #5676, this goes back quite a while. Apparently not really fixed back then, or another regression since.

Version 1, edited 3 years ago by Bjoeni (previous) (next) (diff)

comment:30 by Don-vip, 3 years ago

Keywords: upload changeset comment added
Milestone: 21.07

comment:31 by Don-vip, 3 years ago

Description: modified (diff)

comment:32 by zelonewolf@…, 3 years ago

This issue is not resolved. I just had it happen to me today again:

https://www.openstreetmap.org/changeset/108541844

This happened after downloading a sparse data set from overpass last night, made some edits, then resumed the next day and uploaded.

by zelonewolf@…, 3 years ago

Attachment: comment_1.png added

Example, part 1: comment entered

by zelonewolf@…, 3 years ago

Attachment: comment_2.png added

Example, part 2: wrong comment shown in changeset settings

comment:33 by zelonewolf@…, 3 years ago

I just added two screenshots from JOSM showing the bug in action. I entered in a changeset comment, and checked on the settings tab, and it was still showing the previous comment.

in reply to:  24 comment:34 by marcello@…, 3 years ago

Replying to simon04:

In 17898/josm:

fix #20887, see #20690 - Upload dialog: fix IllegalStateException: Attempt to mutate in notification

That exception tells you that you have a loop in your notification chain, eg. editor change notifies model, model change notifies editor. This patch only fixes the exception not the loop.

comment:35 by Don-vip, 3 years ago

Resolution: fixed
Status: newclosed

In 18098/josm:

fix #20134 - hopefully fix #20690 too - fix AutoCompletingComboBox selection (patch by marcello)

comment:36 by zelonewolf@…, 3 years ago

Resolution: fixed
Status: closedreopened

Hi,

Unfortunately this problem is not fixed. It just occurred again for me in JOSM 18118:

https://www.openstreetmap.org/changeset/109369310

comment:37 by marcello@…, 3 years ago

I'm working on a patch. I'm refactoring the upload dialog to make it much simpler internally. As of now there are at least 4 models that need to stay in sync, which obviously they don't. I'm replacing them with just one model.

comment:38 by Don-vip, 3 years ago

Milestone: 21.0721.08

Will be fixed with #21240

comment:39 by Don-vip, 3 years ago

Resolution: fixed
Status: reopenedclosed

In 18173/josm:

fix #20690 - fix #21240 - Refactoring of UploadDialog, HistoryComboBox and AutoCompletingComboBox (patch by marcello)

comment:40 by eginhard, 3 years ago

This is not fixed for me yet, I still regularly see the previous changeset comment and source being used (for JOSM/1.5 (18191 en_GB) Linux Ubuntu 21.04).

Additionally, when I click "Upload changes" now, I get an "Empty metadata" dialog box that says:
"The following changeset tag contains an empty key/value:

  • =[value of the source field]

Continue?"
And the values of the comment and source field are duplicated into two new rows with empty keys. The upload then works fine after confirming.

comment:41 by zelonewolf@…, 3 years ago

I am also seeing that error. At least an error message is better than silently uploading the wrong comment :)

comment:42 by marcello@…, 3 years ago

Duplicated entries in the tag editor may be the cause of this bug. I wonder where the empty keys come from? Do you by any chance use remotecontrol to open JOSM?

comment:43 by eginhard, 3 years ago

No, I always open it manually.

The duplicate entries only appear later. I now always go to the tag editor to check the entries there because this bug occurs so frequently and fix them manually if necessary. Then I press "Upload changes" and only now the duplicate entries with empty keys appear and the "Empty metadata" warning is shown. That behaviour is also new since #21240.

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. 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.