Edgewall Software

Ticket #4474 (new defect)

Opened 20 months ago

Last modified 3 weeks ago

diffing two large trees results in a massive list with a lot of empty links

Reported by: theultramage@… Owned by: cboos
Priority: normal Milestone: 0.13
Component: version control/changeset view Version: devel
Severity: normal Keywords: svn diff
Cc: nick-trac@…, mark.freund@…

Description

If I run the diff in the following link, instead of directly showing all the diffs, it displays a list of links to the diffs of individual files.

That wouldn't be too bad (it's probably intended to reduce browser load but I'd like to be able to customize the behavior somehow - help!), but in the above case, many of the links lead to empty diffs, which is obviously wrong. Please fix it so it only links to non-empty diffs.

Attachments

Change History

in reply to: ↑ description   Changed 20 months ago by eblot

Replying to theultramage@gmail.com:

That wouldn't be too bad (it's probably intended to reduce browser load but I'd like to be able to customize the behavior somehow - help!),

About this peculiar point: did you set up the Trac parameters as described in TracIni#changeset-section (max_diff_*)?

  Changed 20 months ago by theultramage@…

Yes I noticed that one shortly after, and it works for that particular subdirectory. (although when I ran it on the root dir it rattled for a while and then gave up with no error messages or anything :)

  Changed 18 months ago by cboos

  • keywords svn diff added
  • milestone set to 0.11

Yes, this is a real issue in SubversionRepository.get_changes() that I still need to investigate.

follow-up: ↓ 5   Changed 18 months ago by theultramage@…

This was fixed sometime in january, probably by r4548 (but not sure).

in reply to: ↑ 4   Changed 18 months ago by cboos

Replying to theultramage@gmail.com:

This was fixed sometime in january, probably by r4548 (but not sure).

Ah, then we were not speaking of the same thing. I noticed that this happened when comparing different branches, and that spurious diffs were appearing for binaries, like in, e.g.

diff:trunk/htdocs@4700//sandbox/security/htdocs@4700

(those are actually the same pictures)

  Changed 18 months ago by theultramage@…

Hm, in my case it was probably caused by the tree-diffing engine not skipping empty diffs (see example, the first file). This doesn't happen anymore on trunk. Maybe a case needs to be added for binary files?

  Changed 18 months ago by cboos

Ok thanks for the example, it helps to understand the issue.

  Changed 18 months ago by anonymous

Update; the situation still happens, but it seems that only for larger diffs. I needed to do a diff of two entire branches (with almost the same content) today, and it still gave me a huge list with "(No files)" inside. I hope it is reproducible.

  Changed 17 months ago by cboos

  • milestone changed from 0.11 to 0.12

The bug will probably stay until after the 0.11 release, but could probably be then backported to 0.11-stable.

  Changed 17 months ago by nick-trac@…

  • cc nick-trac@… added

  Changed 3 weeks ago by mark.freund@…

  • cc mark.freund@… added

Add/Change #4474 (diffing two large trees results in a massive list with a lot of empty links)

Author



Change Properties
<Author field>
Action
as new
as The resolution will be set. Next status will be 'closed'
to The owner will change. Next status will be 'new'
The owner will change to anonymous. Next status will be 'assigned'
 
Note: See TracTickets for help on using tickets.