Modify

Opened 6 years ago

Closed 5 years ago

Last modified 5 years ago

#16508 closed enhancement (fixed)

[Performance] Reading object history is inefficient

Reported by: mmd Owned by: Upliner
Priority: normal Milestone:
Component: Plugin reverter Version:
Keywords: performance multi fetch Cc:

Description

Attachments (0)

Change History (14)

comment:1 by naoliv, 6 years ago

Probably the same fix (and same problem) from #11286

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

Replying to naoliv:

Probably the same fix (and same problem) from #11286

Yes, it's the same topic. In the meantime, is has already been implemented in cgimap, only the Rails port is still missing (but not used anyway for this call): https://github.com/openstreetmap/openstreetmap-website/pull/1189

comment:3 by mmd, 5 years ago

Priority: normalcritical

I'm increasing the priority of this issue to critical as a follow up for https://lists.openstreetmap.org/pipermail/talk-gb/2019-August/023327.html

This mapping accident which moved a large number of nodes (>100k) in London took several hours to revert, due to the slow download of object versions in JOSM reverter. Please consider switching to Multi Fetch (https://wiki.openstreetmap.org/wiki/API_v0.6#Multi_fetch:_GET_.2Fapi.2F0.6.2F.5Bnodes.7Cways.7Crelations.5D.3F.23parameters) instead of downloading each object version one by one. Refer to API documentation for some example calls.

comment:4 by stoecker, 5 years ago

Priority: criticalnormal

comment:5 by mmd, 5 years ago

@steocker: why did you reduce the priority to normal? Being able to quickly repair bad edits is essential, now that the changeset upload is no longer handled by the Rails port.

comment:6 by stoecker, 5 years ago

A bug which affects only few people and which is not causing a total failure is a normal priority.

comment:7 by Upliner, 5 years ago

Fixed in [o35078]
PS: sorry for garbled commit message, I wasn't here for long time and forgot how to use ant publish

comment:8 by Upliner, 5 years ago

Resolution: fixed
Status: newclosed

comment:9 by GerdP, 5 years ago

I did not yet try it but I think the new code is not properly handling the case when one or more of the requested elements don't exist? See #17291 for my work on this in core.

comment:10 by Upliner, 5 years ago

GerdP, see ChangesetReverter.java lines 247-259, I wrote them specifically for this issue. But I haven't tested this case either. If you have a changeset number where this issue happens, I will be able to test it.

comment:11 by mmd, 5 years ago

Maybe one of the changesets including redactions would be useful here, like https://www.openstreetmap.org/user/pnorman%20redaction%20revert

I know that reverter plugin blacklists two known revertion users. For testing purposes you could try and disable this check in ChangesetReverter.java

in reply to:  10 comment:12 by GerdP, 5 years ago

Replying to Upliner:

GerdP, see ChangesetReverter.java lines 247-259, I wrote them specifically for this issue. But I haven't tested this case either. If you have a changeset number where this issue happens, I will be able to test it.

Ah, okay, I didn't understand that this code handles the problem.
BTW: Great performance improvement! I tried to code that a few month ago for the core method and failed.

Last edited 5 years ago by GerdP (previous) (diff)

in reply to:  7 comment:13 by Don-vip, 5 years ago

Replying to Upliner:

Fixed in [o35078]
PS: sorry for garbled commit message, I wasn't here for long time and forgot how to use ant publish

Thanks a lot for resuming your work on this plugin :)

comment:14 by mmd, 5 years ago

Thanks a lot, performance improvement is truly impressive!

Modify Ticket

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