Subject: Re: bug#60653: 30.0.50; tree-sitter: `treesit-[explore/inspect]-mode' can leak memory

From: Mickey Petersen <[email-masked]>
Date: Mon, 09 Jan 2023 08:58:50 +0000

Yuan Fu <[email-masked]> writes:

> Mickey Petersen <[email-masked]> writes:
>
>> If you enable either the `treesit-inspect-mode' or
>> `treesit-explore-mode' and leave them to their devices, you may find
>> that through excessive editing, particularly programmatically, that it
>> can cause memory leaks over time.
>>
>> I am 90% certain those modes are responsible: if I do not use them,
>> then I do not experience these issues. I have had the oomkiller reap
>> the Emacs process as it simply balloons out of control over time.
>
> Hmmm, maybe it’s just using a lot of memory. Emacs never returns memory
> once it allocates them. Are you opening a lot of buffers? A tree-sitter
> parse tree uses about 10x memory as the source text.
>

Nah. This VM's got 64 GiB RAM. So that's not it. And my list of open
buffers does go up or down a bit, but as I'm working on TS stuff, it's
mostly the same handful of smallish files.

Note that I used the third-party tree-sitter implementation for a long
time and never encountered this. And it never seems to happen if I
leave the explorer/inspect mode off. Note that I do do a lot of repeat
editing in the ones that have those modes active.

There's definitely something going on here, and I wish I had more
information to give you, Yuan!

> Yuan