Running several matches against several be-trees in sequence #26
Open
arodionov53 wants to merge 31 commits into
Open
Running several matches against several be-trees in sequence #26arodionov53 wants to merge 31 commits into
arodionov53 wants to merge 31 commits into
Conversation
…d metadata file (#1) * removed travis.yml file and added codeowners workflow and metadata file * updated git runner to run on public ubuntu-22.04 instead self-hosted * updated codeowners * removed metadata.yml and codeowners files and updated actions checkout to v3 * removed extra spaces
[DEGA-1468] match_not_all_of_int and match__all_of_int optimization.
Ticket: [DEGA-1629](https://adgear.atlassian.net/browse/DEGA-1629) Only the Gatekeepers team should be able to approve some PRs as the maintainers of the project. _This is an automatic pull request opened with [adgear/lepage ux53](https://github.com/adgear/lepage)_.
Changes for Erlang Scheduler friendly implementation
- count number of visited nodes when traversing BE-Tree;
- count number of visited nodes when traversing boolean expressions ASTs;
- count number of boolean expressions operations.
The nodes counts and operations counts are for 'erl-be-tree' to estimate number of reductions.
Tag v1.2.0
…t (A or B)': During BE-Tree build procedure, 'betree_insert_sub' (betree.c), or 'erl_betree:betree_insert_sub/2', the BE-Tree is constructed the way to facilitate rejection of the boolean expressions without even evaluating them. The BE-Tree construction is incorrect for expressions with clauses 'not (A and B)', 'not (A or B)'. The incorrect BE-Tree construction for such expressions causes rejection of boolean expressions that are 'true'.
Fix: the clustering for expressions that contain 'not (A and B)', 'not (A or B)': During BE-Tree build procedure, 'betree_insert_sub' (betree.c), or 'erl_betree:betree_insert_sub/2', the BE-Tree is constructed the way to facilitate rejection of the boolean expressions without even evaluating them. The BE-Tree construction is incorrect for expressions with clauses 'not (A and B)', 'not (A or B)'. The incorrect BE-Tree construction for such expressions causes rejection of boolean expressions that are 'true'.
[PEDSP-6400] * use AR variable to override ar tool.
…n expression tree (#12) * initial commit * add arraylist structure * add betree search with error reason * add fail reason for leaf nodes in match node * add last reason for logging * add all subs fails TCs for fail reason test * rollback original code for main file * add modified file for error reason * change test file to err version * fix debug file * add traverse sub id * fix conventioning for original code * add a debugging file (.gdb) * add a missing function in header * fix logic for logging error reason * add define config about allocating * add more assert and fix .gdb script * remove unnecessary files, add missing code adding sub_id when inserting * remove debug print * fix error on write_dot_to_file_err * fix too many argument error on build with NIF=true, add include to replace raw code itself * add a testcase causing crash for the test * fix set expr error * add more testcase * resolve memory leak valgrind issue, add benchmark test * fix error on manipulating short circuit reason, adding right cdir sub_ids * hashtable default size to 128 from 4 * revert back capacity size to original * introduce reasonlist for report * missing files * fix error on bool_expr no_reason * enhance performance * reduce initial size * use array instead of hashtable * resolve critical warnings (wrong function call, type mistmatch) * combine id to var name table into result structure * remove betree_reason_map_destory when calling free_report_err * add missing reason map destroy to avoid leak, fix formatting and compile warning * remove betree_reason_map_destory * correct compiler warning, only free reason map without NIF * remove unnecessary files (.dot) commited by mistake * update README.md * add missing word on README.md * *_ids_* functions now use ids given * Revert "*_ids_* functions now use ids given" This reverts commit 4f2bc9e. * limit non matches (invalid_event) result to have ids provided * substitute arraylist with new dynamic_array * missing files for build-test-benchmark
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adding functionality for boolean expression factorization - running several matches against several be-trees in sequence.
See Troubleshooting tools: Targeting, Creatives, and Frequency Capping.