Modify

Opened 9 years ago

Closed 4 years ago

#10783 closed defect (fixed)

Loses everything already downloaded when encountering an error

Reported by: naoliv Owned by: naoliv
Priority: normal Milestone:
Component: Plugin undelete Version:
Keywords: Cc:

Description

Example: ask to undelete 100 objects.
If there is an error on the last object (an internal server error in OSM due to a big object history, for example), all the information from the already downloaded 99 objects are lost (and nothing is restored)

Couldn't the plugin restore the other objects and only give a warning at the end, saying that it wasn't possible to restore some objects? (also displaying the IDs that had an error)

JOSM:

Repository Root: http://josm.openstreetmap.de/svn
Build-Date: 2014-11-24 02:33:57
Last Changed Author: Don-vip
Revision: 7743
Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Relative URL: ^/trunk
URL: http://josm.openstreetmap.de/svn/trunk
Last Changed Date: 2014-11-23 23:54:40 +0100 (Sun, 23 Nov 2014)
Last Changed Rev: 7743

Identification: JOSM/1.5 (7743 pt_BR) Linux Debian GNU/Linux testing (jessie)
Memory Usage: 247 MB / 8158 MB (122 MB allocated, but free)
Java version: 1.7.0_65, Oracle Corporation, OpenJDK 64-Bit Server VM
Java package: openjdk-7-jre:amd64-7u71-2.5.3-2
VM arguments: [-Dawt.useSystemAAFontSettings=on]
Dataset consistency test: No problems found

Plugins:
- Create_grid_of_ways (30762)
- ImageryCache (30738)
- OpeningHoursEditor (30737)
- PicLayer (30762)
- SimplifyArea (30791)
- buildings_tools (30762)
- conflation (0.1.7)
- contourmerge (1012)
- download_along (30762)
- editgpx (30737)
- geotools (30762)
- importvec (30762)
- jts (30762)
- log4j (30762)
- measurement (30737)
- merge-overlap (30784)
- notes (v0.9.5)
- opendata (30806)
- pbf (30762)
- pdfimport (30737)
- poly (30738)
- reverter (30737)
- scripting (30702)
- todo (29154)
- turnrestrictions (30762)
- undelete (30762)
- utilsplugin2 (30762)

Attachments (0)

Change History (5)

comment:1 by GerdP, 5 years ago

Owner: changed from team to naoliv
Status: newneedinfo

I am working on a fix for this. So far I have a patch for MultiFetchServerObjectReader that allows to quickly find invalid ids in the user provided list. My current approach would be to remove the bad ids and undelete the rest.
Question is what to do with the bad ids. Would it be enough to show them in a notification popup that would disappear after a while?

comment:2 by naoliv, 5 years ago

A dialog with something like Objects with ids X, Y, Z could not be restored?
If possible, maybe offer two buttons/actions for this dialog: Retry and OK (or Accept)

comment:3 by GerdP, 5 years ago

The bad ids I'm talking about are not in OSM, so a retry would not make sense. But I agree, it would be good to show a dialog which shows all objects so that you can use copy+paste.
I've not yet seen other errors like "an internal server error in OSM due to a big object history". At the moment I try to change the multifetch class to allow retrieval of older versions. If that works I plan a rewrite of the undelete plugin so that
we should not see errors like that.
See also ticket:10782#comment:2

comment:4 by GerdP, 4 years ago

In 16205/josm:

see #18982, #10783: allow to collect missing primitives instead of stopping on first error when loading history data

comment:5 by GerdP, 4 years ago

Resolution: fixed
Status: needinfoclosed

see [o35398:35399]
Doesn't catch network errors but the case that an object was redacted or never existed.

Modify Ticket

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