{"thread":{"id":"10442","subject":"git-annotate - leaking hundrets of megabytes","startedAt":"2007-10-23T17:00:34Z","lastAt":"2007-10-23T20:12:18Z","messageCount":3,"participants":["Sven Herzberg","Linus Torvalds","Florian Weimer"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"57005","messageId":"471E28B2.7020508@imendio.com","threadId":"10442","inReplyTo":null,"subject":"git-annotate - leaking hundrets of megabytes","fromName":"Sven Herzberg","fromEmail":"sven@imendio.com","sentAt":"2007-10-23T17:00:34Z","receivedAt":"2007-10-23T17:00:34Z","isPatch":false,"sender":{"key":"sven@imendio.com","avatar":"https://gravatar.com/avatar/1f83ce0b96e74412ae010be6343303fd5fcfa7f87aa1092b53002c4366c9af5e?d=mp&s=160"},"body":"Hey,\n\nI just started to write a small tool that's supposed to provide a\ngraphical annotation view. It's supposed to display the information of\ngit-annotate and provide a way to browse through the history (so people\ncan click on links that refer to older revisions, etc.). According to\nthe man page of git-annotate, I looked into the incremental mode to make\nsure the tool can load the information step by step.\n\nHowever, to make sure the user interface doesn't block while\n\"git-annotate --incremental\" is running, I decided to take a really slow\nannotation while developing and then I saw that git-annotate leaks\n*lots* of memory (at least in that use-case).\n\nIn my example, it used up to 450MB:\nhttp://people.imendio.com/~sven/massif.18740.png\n\nReproduce:\n1. git clone git://git.webkit.org/WebKit.git\n2. cd WebKit/WebCore\n3. git-annotate --incremental ChangeLog\n\nRegards,\n  Sven\n\nPS: Please CC me as I'm not on the list.\n"},{"id":"57011","messageId":"alpine.LFD.0.999.0710231108150.30120@woody.linux-foundation.org","threadId":"10442","inReplyTo":"471E28B2.7020508@imendio.com","subject":"Re: git-annotate - leaking hundrets of megabytes","fromName":"Linus Torvalds","fromEmail":"torvalds@linux-foundation.org","sentAt":"2007-10-23T18:14:41Z","receivedAt":"2007-10-23T18:14:41Z","isPatch":false,"sender":{"key":"torvalds@linux-foundation.org","avatar":"https://avatars.githubusercontent.com/u/1024025?v=4"},"body":"\n\nOn Tue, 23 Oct 2007, Sven Herzberg wrote:\n> \n> In my example, it used up to 450MB:\n> http://people.imendio.com/~sven/massif.18740.png\n> \n> Reproduce:\n> 1. git clone git://git.webkit.org/WebKit.git\n> 2. cd WebKit/WebCore\n> 3. git-annotate --incremental ChangeLog\n\nHmm. I'm not seeing this at all. I do\n\n\t/usr/bin/time git-annotate --incremental ChangeLog > /dev/null\n\nin WebCore, and it returns\n\n\t0.16user 0.01system 0:00.18elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k\n\t0inputs+0outputs (0major+8365minor)pagefaults 0swaps\n\nwhere that minor pagefault count is a good estimate of total memory used. \n8365 minor page faults implies it only ever got 32MB of memory total.\n\nWhat git version do you have, or did you perhaps mean some other file or \nother config that causes this?\n\n(It does end up using lots more memory if you ask for \"-C\" to see if there \nare copies from other sources, but even then I'm not seeing anything \nclose to 450MB!)\n\n\t\t\tLinus\n"},{"id":"57023","messageId":"87k5pdvbdp.fsf@mid.deneb.enyo.de","threadId":"10442","inReplyTo":"alpine.LFD.0.999.0710231108150.30120@woody.linux-foundation.org","subject":"Re: git-annotate - leaking hundrets of megabytes","fromName":"Florian Weimer","fromEmail":"fw@deneb.enyo.de","sentAt":"2007-10-23T20:12:18Z","receivedAt":"2007-10-23T20:12:18Z","isPatch":false,"sender":{"key":"fw@deneb.enyo.de","avatar":null},"body":"* Linus Torvalds:\n\n> What git version do you have, or did you perhaps mean some other file or \n> other config that causes this?\n\nI see it with Debian's 1:1.5.3.4-1 version, but also with dd8175f83c725.\nIn my case, it's a git-svn mirror of:\n\n  svn://svn.debian.org/secure-testing/data/CVE/list\n\nThis is a very difficult file for git-annotate (and \"svn blame\") because\nof its history and size.\n"}]}