Feature #1637
closed
KB: Check for error trace in default KB pattern
Added by Alexey Khoroshilov over 13 years ago.
Updated over 12 years ago.
Category:
Statistics server
Published in build:
bfd7942
Description
"Create filled KB record" should create a record with a script that check if an error trace is similar to the current one according to one of criteria proposed by Eugene.
Criteria #3 is good enough for the beginning:
traces are equal iff their trees of function calls are the same.
Tree nodes are function names, child-parent relation is "called by", children are ordered.
Files
01.png (55.8 KB)
01.png |
First part of KB verdicts on the QA reference launches |
Evgeny Novikov, 03/15/2012 05:53 PM
|
|
02.png (49.2 KB)
02.png |
Second part of KB verdicts on the QA reference launches |
Evgeny Novikov, 03/15/2012 05:53 PM
|
|
01_fixed.png (55.5 KB)
01_fixed.png |
First part of KB verdicts on the QA reference launches after fixes were applied |
Evgeny Novikov, 03/15/2012 05:53 PM
|
|
02_fixed.png (49 KB)
02_fixed.png |
Second part of KB verdicts on the QA reference launches after fixes were applied |
Evgeny Novikov, 03/15/2012 05:53 PM
|
|
- Category set to Statistics server
- Status changed from New to Open
- Assignee set to Evgeny Novikov
As well as for #1633 issue we need to integrate KB scripts with error trace parser and may be write some special routines allowing simple tree traversing. The latter will allow to implement all criterion and a lot of other KB library functions in the more efficient way.
- Priority changed from High to Normal
- Priority changed from Normal to High
- Status changed from Open to Resolved
After implementation of blockers this issue becomes trivial. It's committed to b625fa5 of knowledge-base-2 branch.
From today when you'll click Create filled KB record you'll obtain a new KB record with a filled Script field:
return 1 if (call_stacks_ne($et, $kb_et));
- Status changed from Resolved to Open
At the Demo 18, a couple of serious issues was identified in this feature:
call_stack
should be removed to something like call_tree
;
- a bug with initialization function (which always has a file-specific name) should be fixed, i.e. this function should not be considered for matching of calls.
I'm going to fix. Otherwise current auto-complete KB scripts aren't useful at all.
- Status changed from Open to Resolved
- Published in build set to bfd7942
Pavel Shved wrote:
At the Demo 18, a couple of serious issues was identified in this feature:
call_stack
should be removed to something like call_tree
;
- a bug with initialization function (which always has a file-specific name) should be fixed, i.e. this function should not be considered for matching of calls.
Both issues are fixed in commit bfd7942 of master branch and will be available after QA testing. If all will be ok, I'll deploy fixes on QA reference launches and for CPAchecker DB.
BTW!!! If you have some local knowledge bases (I guess that you haven't any), please update them manually to be up-to-date:
mysql ldv_db_3 -e "update kb set script=replace(script, 'call_stacks_ne', 'call_trees_ne');"
Without this KB recalculator will fail when you will try to upload something similar but new, or when you will try to recalc KB caches.
Fixes are deployed and show that all works. For instance, see that was automatically marked as 'False unsafe' on the basis of previously added KB records.
Note, that KB verdicts changed considerably after these fixes application. See attachments that show this. Also CPAchecker traces are matched with BLAST ones now. For instance, this leaded to KB records application to CPAchecker error traces.
Please close, if there isn't any objections.
- Status changed from Resolved to Closed
Also available in: Atom
PDF