https://bugs.kde.org/show_bug.cgi?id=365633

            Bug ID: 365633
           Summary: GUI freezes due to assistant problem hack
           Product: kdevelop
           Version: git master
          Platform: Other
                OS: Linux
            Status: UNCONFIRMED
          Severity: grave
          Priority: NOR
         Component: Language Support: CPP (Clang-based)
          Assignee: kdevelop-bugs-n...@kde.org
          Reporter: m...@milianw.de

The merge of the assistant-ng branch shows a big issue with the hack that is
used to show problems in the editor for assistant ranges. Namely, we have this
now:

void ProblemReporterPlugin::updateReady(const IndexedString& url, const
KDevelop::ReferencedTopDUContext& top)
{
    {
      DUChainWriteLocker lock(DUChain::lock(), 300);
      ...

On initial parse, this will be triggered a lot (as many files are getting
updated. Each time, we will block the GUI for some time to wait up to 300ms.
Note that our BKL is under heavy load at that time, and write locks are not
fair and thus often starved by read locks elsewhere.

This must be rewritten to not modify the DUChain for whatever purpose it's
serving (squiggly lines in the editor?)

Reproducible: Always

Steps to Reproduce:
1. open large project(s) in kdevelop
2. try to interact with the editor to trigger assistants


Actual Results:  
gui is often time blocked

Expected Results:  
no blocks

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to