Minimizing Database Repros using Language Grammars
3 Assignments
0 Petitions
Accused Products
Abstract
Described is automatically processing an initial database repro (text representing a bug when corresponding script is executed in a database engine) into a min-repro (a subset of the text) that is simplified version of the initial repro yet still contains the bug. A parse tree representative of the initial database repro is processed into simplified parse trees based on language grammar rules, e.g., by replacing higher level nodes with descendant nodes. Repros of the simplified parse trees are executed to determine which simplified repros still fail execution because of the bug (that is, the simplified repros were not oversimplified). A minimum simplified parse tree with respect to a desired level of minimality is found from among those failing repros, with the simplified repro that corresponds to the minimum simplified parse tree output as the min-repro.
9 Citations
40 Claims
-
1-20. -20. (canceled)
-
21. In a computing environment, a method performed on at least one processor comprising:
-
processing a search space of simplifications operative to transform an initial database repro into a set of syntactically valid repros; pruning the search space based upon monotonicity corresponding to executing a repro of the set of syntactically valid repros to determine whether execution of the repro fails because a bug is present; and minimizing an initial database repro into a min-repro of which execution fails because the bug is present and a complexity is minimal amongst the set of syntactically valid repros. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30, 31)
-
-
32. In a computing environment, a method performed on at least one processor comprising:
-
performing at least one simplification on a database repro, the at least one simplification corresponding to at least one language grammar rule; processing a database engine to execute a simplified version of the database repro to determine whether a bug manifests for the database repro; and outputting the simplified version of the database repro as a min-repro. - View Dependent Claims (33, 34, 35, 36)
-
-
37. In a computing environment, an apparatus comprising:
a language grammar minimizing mechanism operative to minimize an initial database repro into a min-repro in which a bug in the initial database repro manifests for the min-repro, the language grammar minimizing mechanism further operative to process a search space of simplifications to transform the initial database repro into a set of repros that are syntactically correct according to at least one language grammar rule and process the set of repros to determine the min-repro. - View Dependent Claims (38, 39, 40)
Specification