Opened 9 years ago

Closed 13 months ago

Last modified 13 months ago

#3003 closed enhancement (fixed)

IWikiSyntaxProvider with doxygen SEARCH_ENGINE unusable slow for large code-bases

Reported by: mgerth@… Owned by: Christian Boos
Priority: normal Component: DoxygenPlugin
Severity: minor Keywords:
Cc: Trac Release: 0.11



  1. search engine is enabled in doxygen
  2. the doxygen-html-code base is large
  3. a simple WIKI-page is loaded by the user

--> the WIKI-Syntax-provider of the DoxygenPlugin stalls the whole server for up to 5 seconds with 100% CPU usage when loading any simple wiki-page.

my current workaround (with lost functionality) is:


_doxygen_lookup(self, segments):

        # Request for a named object
        # TODO:
        #  - do something about dirs
        #  - expand with enum, defs, etc.
        #  - this doesn't work well with the CREATE_SUBDIRS Doxygen option
        path, link = lookup('class%s.html' % file, 'class')
        if not path:
            path, link = lookup('struct%s.html' % file, 'struct')
        if path:
            return 'view', path, link

        # Revert to search
>>>>>>> return ('search', None, None) # bail out for performance issues <<<<<<<<<< 

       results = self._search_in_documentation(doc, [file]) << this is never called now and he rest of this function can not be used at the moment in our case

It would be nice to have a trac.ini - configuration option to disable the last branch, instead of hard-coding the return. I think optimizing the search_in_documentation function would take more time, and it is not needed that much.

Best Regards

Attachments (0)

Change History (3)

comment:1 Changed 9 years ago by Radek Bartoň

Owner: changed from Radek Bartoň to Christian Boos

Sorry for delay, I wasn't notified about this...

comment:2 Changed 13 months ago by Committo-Ergo-Sum

Resolution: fixed
Status: newclosed

Performance issues seem to be solved in version > 0.11.

comment:3 Changed 13 months ago by Christian Boos

That's great news, I'll try to find some time to test all your enhancements.

Modify Ticket

Change Properties
Set your email in Preferences
as closed The owner will remain Christian Boos.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment

E-mail address and name can be saved in the Preferences.

Note: See TracTickets for help on using tickets.