Hi Nicolas, On Tue, Jun 02, 2015 at 10:26:54PM +0200, Nicolas Goaziou wrote: > Hello, > > Suvayu Ali <fatkasuvayu+li...@gmail.com> writes: > > > I have been noticing a strange heisenbug. From time to time, Org starts > > eating CPU for certain specific tasks: org-end-of-line, fill-paragraph, > > folding or unfolding trees, or adding/changing properties with > > org-set-property. However these happen only after I have been using Org > > for a while. > > This is typical for cache breakage.
Okay, good that it is not as mysterious as I was thinking :). > > I think I also see similar CPU eating symptoms when I have buffers > > editing version controlled files. I have auto-revert-mode enabled for > > files under version control, I think that is related. I'm not entirely > > sure though, I don't know how to narrow it down either. > > > > I say it is cache related since all this magically goes away, once I go > > to the top of my current tree, and call org-element-cache-reset. > > However, once the symptoms start showing, it happens more frequently > > despite my cache resets. > > Usually, a cache breakage is a specific action applied to some specific > document structure that induces an incorrect computation of the parts of > the cache to clear and to update. > > If you encountered the problem, it means the problematic document > structure is already in the current buffer. So, the chances are high > that you will repeat the problematic editing action on it again, even > after resetting the cache. IOW, all the ingredients are there for the > problem to repeat again and again. > > Finding the problematic action is not easy. I wrote a basic minor mode > (element-debug-mode) for that: after each change to the buffer, it > checks if the cache and pending updates match the parse tree. It sends > a message anytime they differ, which happens as soon as a problematic > action was triggered. I have enabled the mode on my document. Let's see how this goes. Btw, since you warn against large documents, would it help if I narrowed a large document before enabling the mode? Thanks a lot :). -- Suvayu Open source is the future. It sets us free.