Menu

#372 APC query cache not working with global search

closed
Core/OQL
Critical
1.2.1
enhancement
2018-02-19
2011-03-31
No

The queries are cached with the needle.
Example: SELECT DBServer FROM DBServer AS DBServer WHERE 1 AND MATCHES \'db1\'

As a consequence, each a global search is issued, the cache grows by approx. 70 queries !!!

suggested fix:

  • Create a new expression: ExpressionMatch(needle, class = '')
  • Into the query builder, develop as !ConcatWS...
  • Global search: replace oFilter->AddCondition_FullText() with oFilter->SetCondition(new ExpressionMatch(...))
  • Deprecate DBObjectSearch::...FullText...() verbs

Discussion

  • Romain Quetiez

    Romain Quetiez - 2011-04-28
    • type changed from defect to enhancement
    • milestone changed from 1.1 to Zanzibar
     
  • Romain Quetiez

    Romain Quetiez - 2017-10-03
    • Description has changed:

    Diff:

    
    
    • status: new --> closed
    • Priority: major --> Critical
    • Version: 1.0.2 --> 1.2.1
     
  • Romain Quetiez

    Romain Quetiez - 2017-10-03

    Still, when displaying search results, the cache is growing with queries in the form 'SELECT Person WHERE id IN(123, 546)'... to be continued

     

Log in to post a comment.