Subject: Re: bug#62780: 30.0.50; Redisplay gets slow when using Org tables + show-trailing-whitespace

From: Eli Zaretskii <[email-masked]>
Date: Fri, 14 Apr 2023 13:37:02 +0300

> From: Ihor Radchenko <[email-masked]>
> Cc: [email-masked]
> Date: Fri, 14 Apr 2023 09:20:01 +0000
> 
> Eli Zaretskii <[email-masked]> writes:
> 
> > Moreover, I just disabled static compositions completely, by making
> > find_composition return zero immediately, which basically avoids the
> > calls to next/previous-single-property-change which search for
> > 'composition' property, and I still see quite a significant slowdown
> > with the recipe of this bug (50x30 org-table).  Can you reproduce
> > this?  If you can, what does the profile say now?
> 
> I cannot reproduce.
> The typing has no noticeable delays.

Your build is optimized, yes?  Try building without optimizations, you
will see quite significant delays just by creating the table.

In any case, if you think disabling static composition can be a
reasonable option for Org Table users (do they use
prettify-symbols-mode, for example, in the same buffer where they have
Org tables?), that should be easy.

> Is it a problem to keep multiple interval trees: one for all properties,
> and several for individual properties?

Yes, I think so, because search for any non-nil properties will be
greatly complicated.  But if someone wants to work on such a split,
and can present working code, I won't reject it without testing.