X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/cd0fa5a77675829a4dc73bf665231630a5085a19..524ee496e357ce22fb789c971c61c614d2adc8c3:/doc/bugs/recentchangesdiff_crashes_on_commits_which_remove_a_lot_of_files.mdwn diff --git a/doc/bugs/recentchangesdiff_crashes_on_commits_which_remove_a_lot_of_files.mdwn b/doc/bugs/recentchangesdiff_crashes_on_commits_which_remove_a_lot_of_files.mdwn index 5872275b5..f646143d3 100644 --- a/doc/bugs/recentchangesdiff_crashes_on_commits_which_remove_a_lot_of_files.mdwn +++ b/doc/bugs/recentchangesdiff_crashes_on_commits_which_remove_a_lot_of_files.mdwn @@ -1,4 +1,4 @@ -[[plugin/recentchangesdiff]] causes rendering to segfault if a commit removes a lot of contents. I removed close to 400 files, total size of about 950Kb in a single commit and now `ikiwiki` segfaults on refresh and rebuild: +[[plugins/recentchangesdiff]] causes rendering to segfault if a commit removes a lot of contents. I removed close to 400 files, total size of about 950Kb in a single commit and now `ikiwiki` segfaults on refresh and rebuild: [...] rendering recentchanges.mdwn @@ -23,3 +23,24 @@ The tarball is at http://scratch.madduck.net/__tmp__recentchanges-segfault.tgz - rm -rf wc/recentchanges ikiwiki --setup ikiwiki.setup # works + +> I can reproduce it fine with that, thanks, and it's really looking like a +> pure perl bug, that is triggered by markdown. Here's a simpler test case: + + joey@kodama:/tmp>markdown < f + zsh: segmentation fault markdown < f + +> Where f is a 6.3 mb file that I +> extracted from ikiwiki's rendering pipeline. + +> It seems to be crashing at markdown line 345, which is a big nasty +> `s///` statement. + +> The good news: markdown version 1.0.2~b8-2 does not trigger this perl bug. +> I only see it with 1.0.1. (Bad news: Newer versions of markdown are +> slooooooow, especially on such large files.) + +> I'm calling this [[done]] since I've filed [[debbug 470676]] on perl, and +> also have modified recentchangesdiff to only show the first 200 lines of +> diff, which should be enough without bloating the recentchanges into +> perl-crashing territory. --[[Joey]]