Skip to content

Refactor execution-plan freeing mechanism - #2946

Merged
swilly22 merged 19 commits into
masterfrom
fix-free-exec-plan-raz
Apr 17, 2023
Merged

swilly22 merged 19 commits into
masterfrom
fix-free-exec-plan-raz

Conversation

@raz-mon

@raz-mon raz-mon commented Mar 13, 2023

Copy link
Copy Markdown
Collaborator

This PR refactors the freeing mechanism of our execution-plan, and by thus allows for more complex execution-plans such as introduced in Foreach and Call {}.

@OfirMos
OfirMos force-pushed the fix-free-exec-plan-raz branch 3 times, most recently from 01d2b28 to 9c14a7d Compare March 22, 2023 15:58

@raz-mon raz-mon left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work
See few comments

Comment thread src/execution_plan/execution_plan.c Outdated
Comment thread src/execution_plan/execution_plan.c
Comment thread src/execution_plan/execution_plan.c Outdated
@OfirMos
OfirMos force-pushed the fix-free-exec-plan-raz branch from 9c14a7d to 18dbf1f Compare March 23, 2023 08:35
@OfirMos
OfirMos force-pushed the fix-free-exec-plan-raz branch from 18dbf1f to 105e491 Compare March 23, 2023 08:41
@codecov

codecov Bot commented Mar 23, 2023 •

Copy link
Copy Markdown

Codecov Report

Patch coverage: 96.77% and project coverage change: +0.23 🎉

Comparison is base (5541abc) 90.33% compared to head (890698e) 90.56%.

❗ Current head 890698e differs from pull request most recent head 16cb326. Consider uploading reports for the commit 16cb326 to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2946      +/-   ##
==========================================
+ Coverage   90.33%   90.56%   +0.23%     
==========================================
  Files         283      282       -1     
  Lines       28044    27962      -82     
==========================================
- Hits        25333    25324       -9     
+ Misses       2711     2638      -73     
Impacted Files Coverage Δ
src/execution_plan/execution_plan.c 99.64% <96.66%> (-0.36%) ⬇️
src/graph/query_graph.c 95.21% <100.00%> (ø)

... and 33 files with indirect coverage changes

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report in Codecov by Sentry.
📢 Do you have feedback about the report comment? Let us know in this issue.

@raz-mon
raz-mon requested a review from swilly22 April 9, 2023 13:35
Comment thread src/execution_plan/execution_plan.c Outdated
Comment thread src/execution_plan/execution_plan.c Outdated
Comment thread src/execution_plan/execution_plan.c Outdated
Comment thread src/execution_plan/execution_plan.c Outdated
Comment thread src/execution_plan/execution_plan.c Outdated
Comment thread src/execution_plan/execution_plan.c Outdated
Comment thread src/execution_plan/execution_plan.c Outdated
Comment thread src/execution_plan/execution_plan.c Outdated
Comment thread src/execution_plan/execution_plan.c Outdated
Comment thread src/execution_plan/execution_plan.c Outdated
Comment thread src/execution_plan/execution_plan.c Outdated
Comment thread src/execution_plan/execution_plan.c
Comment thread src/execution_plan/execution_plan.c Outdated
Comment thread src/execution_plan/execution_plan.c Outdated
Comment thread src/execution_plan/execution_plan.c Outdated
Comment thread src/execution_plan/execution_plan.c Outdated
Comment thread src/execution_plan/execution_plan.c Outdated
@swilly22
swilly22 merged commit 4f7f7f9 into master Apr 17, 2023
@swilly22
swilly22 deleted the fix-free-exec-plan-raz branch April 17, 2023 10:55
AviAvni added a commit that referenced this pull request Apr 30, 2023
* Refactor execution-plan freeing mechanism

Co-authored-by: razmon <[email protected]>

* use rax to store labels

* fix comments

* add comment

* addressing review comments

* addressed review comments

* fix

* leak fix

* free ops deepest first

* addressing review comments

* Update execution_plan.c

remove dict init

* Update execution_plan.c

include setjmp

* touchup

* touchup

---------

Co-authored-by: Ofir Moskovich <[email protected]>
Co-authored-by: Avi Avni <[email protected]>
Co-authored-by: Roi Lipman <[email protected]>
AviAvni added a commit that referenced this pull request Apr 30, 2023
* Effects (#2826)

* update with master

* wait for replica

* wait after each query

* refactor test

* effect configuration

* wip

* determine when to use effects

* remove stats

* skip replica config

* adjust constraint test

* use readonly query whenever possible

* debuging

* pass array and len to update labels

* set edge endpoints

* mostly repositioning

* remove debugging prints

* Update graph.query.md (#3029)

BFS: 3 arguments instead of 4

* Clear errno before strtol() (#3021)

Co-authored-by: Roi Lipman <[email protected]>

* Validate with fix (#3018)

* wip

* fix validations

* touchup

* no if branch when children are not visited

* migrate and add tests, fix RETURN validation

* doc addition

---------

Co-authored-by: Roi Lipman <[email protected]>

* Refactor execution-plan freeing mechanism (#2946)

* Refactor execution-plan freeing mechanism

Co-authored-by: razmon <[email protected]>

* use rax to store labels

* fix comments

* add comment

* addressing review comments

* addressed review comments

* fix

* leak fix

* free ops deepest first

* addressing review comments

* Update execution_plan.c

remove dict init

* Update execution_plan.c

include setjmp

* touchup

* touchup

---------

Co-authored-by: Ofir Moskovich <[email protected]>
Co-authored-by: Avi Avni <[email protected]>
Co-authored-by: Roi Lipman <[email protected]>

* Fix optimize label scan (2) (#3034)

* introduce swap candidates to Label-Scan

* doc-fix

* fix

* tests fix

* Update test_optimizations_plan.py

* Update scan_functions.h

* move context to heap

* fix leak

* for index scan as well

* addressing review comments

* touchup

* Update scan_functions.c

* Update scan_functions.c

---------

Co-authored-by: Roi Lipman <[email protected]>

* Fix LockWrite crash (#3039)

* JoinConsume(): Propagaget reset if stream depleted

* WIP: Test FOREACH

* fix foreach crash

* fix tests

* fix

---------

Co-authored-by: Avi Avni <[email protected]>

* Fix for Xenial (OpenMP 4.0/4.5) (#3017)

* Fix for Xenial (OpenMP 4.5)

* fixes 1

* fixes 2

* fixes 3

* fixes 4

* fixes 5

* fixes 6

* fixes 7

---------

Co-authored-by: Avi Avni <[email protected]>

* accumulate updates (#3005)

* accumulate updates

* fix leaks

* add test

* unify default dictType definitions

* fix

* fix 2

* add test

* wip fix

* wip fix

* fix crash

* add effect log

* early review

* fix build

* fix test

* fixes

* fix

* refactoring in progress

* refactoring continue

* write effects directly into buffer

* effects-buffer

* no need to clone value

* no need to clone string

* address review comments

* address review

* fix

* address review comment

* address reivew

* fix perf issue

* fix build

* refactoring

* fix perf

* fix build

* fix

* fix leak

* remove redundant flags

* compute change against new attribute-set

* fix perf

* address review

* fix

* fix

* adding comments

---------

Co-authored-by: razmon <[email protected]>
Co-authored-by: Raz Monsonego <[email protected]>
Co-authored-by: swilly22 <[email protected]>
Co-authored-by: Roi Lipman <[email protected]>

* Fix rewrite `DELETE` clauses (#3067)

* fix and test

* add example

---------

Co-authored-by: Avi Avni <[email protected]>

* Reattach on reset (#3070)

* formatting

* reattach iterator on reset

* disable graphblas memory pool (#3068)

* bump version 2.12.1

---------

Co-authored-by: Roi Lipman <[email protected]>
Co-authored-by: Lior Kogan <[email protected]>
Co-authored-by: nafraf <[email protected]>
Co-authored-by: Raz Monsonego <[email protected]>
Co-authored-by: Ofir Moskovich <[email protected]>
Co-authored-by: Rafi Einstein <[email protected]>
Co-authored-by: razmon <[email protected]>
Co-authored-by: swilly22 <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants