Ticket #3003 (new enhancement)

Opened 5 years ago

Last modified 5 years ago

IWikiSyntaxProvider with doxygen SEARCH_ENGINE unusable slow for large code-bases

Reported by: mgerth@igd.fraunhofer.de Assigned to: cboos
Priority: normal Component: DoxygenPlugin
Severity: minor Keywords:
Cc: Trac Release: 0.11

Description

Case:

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:

file: doxygentrac.py

_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

Change History

06/26/08 21:13:02 changed by Blackhex

  • owner changed from Blackhex to cboos.

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


Add/Change #3003 (IWikiSyntaxProvider with doxygen SEARCH_ENGINE unusable slow for large code-bases)




Change Properties
Action