Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
trunk
-
None
Description
libsvn_client/merge.c:log_noop_revs is an svn_ra_get_logs2 callback. It accumulates the received revisions in an svn_rangelist_t by calling svn_rangelist_merge. This means constant sorting/searching/copying of the rangelists even though the revisions are received strictly in reverse order. As the number of revisions increases this takes huge amounts of time, making merge far too slow.