Skip to content

Improve edge deletion performance #2758

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 14 commits into from
Dec 27, 2022
Merged

Improve edge deletion performance #2758

merged 14 commits into from
Dec 27, 2022

Conversation

AviAvni
Copy link
Contributor

@AviAvni AviAvni commented Dec 11, 2022

No description provided.

swilly22
swilly22 previously approved these changes Dec 15, 2022
@codecov
Copy link

codecov bot commented Dec 24, 2022

Codecov Report

Base: 92.12% // Head: 92.12% // Decreases project coverage by -0.00% ⚠️

Coverage data is based on head (48f6d3c) compared to base (b320690).
Patch coverage: 100.00% of modified lines in pull request are covered.

❗ Current head 48f6d3c differs from pull request most recent head 0e5958f. Consider uploading reports for the commit 0e5958f to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2758      +/-   ##
==========================================
- Coverage   92.12%   92.12%   -0.01%     
==========================================
  Files         264      264              
  Lines       25091    25112      +21     
==========================================
+ Hits        23116    23134      +18     
- Misses       1975     1978       +3     
Impacted Files Coverage Δ
src/execution_plan/ops/op_delete.c 97.47% <100.00%> (-0.03%) ⬇️
src/graph/graph.c 98.23% <100.00%> (-0.08%) ⬇️
src/graph/graph_hub.c 100.00% <100.00%> (ø)
src/graph/rg_matrix/rg_remove_element.c 91.30% <100.00%> (-1.94%) ⬇️
src/graph/rg_matrix/rg_remove_entry.c 100.00% <100.00%> (ø)
src/util/simple_timer.c 100.00% <100.00%> (ø)
src/execution_plan/ops/op_aggregate.c 98.14% <0.00%> (-1.24%) ⬇️
src/value.c 90.30% <0.00%> (-0.31%) ⬇️
... and 3 more

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 at Codecov.
📢 Do you have feedback about the report comment? Let us know in this issue.

@filipecosta90 filipecosta90 added the action:run-benchmark Trigger CI benchmarks label Dec 27, 2022
@AviAvni AviAvni merged commit d4f3408 into master Dec 27, 2022
@AviAvni AviAvni deleted the perf-edge-deletion branch December 27, 2022 14:13
raz-mon pushed a commit that referenced this pull request Jan 25, 2023
* improve edge deletion

* update simple timer

* improve edge deletion perf

* fix build

* fix test

* fix test

* clean

* address review

Co-authored-by: Roi Lipman <swilly22@users.noreply.github.com>
AviAvni added a commit that referenced this pull request Jan 25, 2023
* improve edge deletion

* update simple timer

* improve edge deletion perf

* fix build

* fix test

* fix test

* clean

* address review

Co-authored-by: Roi Lipman <swilly22@users.noreply.github.com>
AviAvni added a commit that referenced this pull request Jan 25, 2023
* Fix toInteger() and toIntegerOrNull() don't convert Booleans (#2797)

* AR_TOINTEGER: add case for type T_BOOL

* skip [8] toInteger() failing on invalid arguments

* Update TypeConversion2.feature

Co-authored-by: Avi Avni <avi.avni@gmail.com>

* Fix right(), left() length validation (#2801)

* Fix AR_LEFT, AR_RIGHT length validation

* Test mistmatch type and fix error message

* left(), right(): NULL is a valid type for lenght

* Fix argument validation

Co-authored-by: Avi Avni <avi.avni@gmail.com>

* fix using timeout max as default when default not configured (#2808)

* fix using timeout max as default when default not configured

* fix

* do not cache query params (#2803)

* do not cache query params

* address PR comments

* fix leak

* fix test

* convert params to SIValues

* wip

* delay freeing of parsed params to after the query is parsed

* free parse params when freeing AST

* revert changes to ast_validations.c

* revert arithmetic_expression_construct changes

* emit an error when param value eval fails

Co-authored-by: Avi Avni <avi.avni@gmail.com>

* fix multi-hop traverse with name path (#2743)

* Add varLen property to QGEdge

* Test variable-length edge queries

* Fix spacing

* Fix test, remove direction

* Fix test

* Test zero length edge

* Init varLen in QGEdge_New()

* rename varLen to rangeLen

* Rewrite test11_range_length_edges()

* Use QGEdge_VariableLength() and QGEdge_RangeLength

* Replace QGEdge_RangeLength() by QGEdge_LengthOne()

* rename function

Co-authored-by: Roi Lipman <swilly22@users.noreply.github.com>
Co-authored-by: Avi Avni <avi.avni@gmail.com>

* indegree(), outdegree() - accept array of strings (#2807)

* _AR_NodeDegree() support T_ARRAY argument

* Add tests

* Fix argument validation

* Free array in case of error detected.

* Duplicate comments and use siarray.array[i]

* Update AR_IN() to use SI_ArrayContainsValue()

* Validate comparedNull pointer

* Support only the following two signatures:

* Test indegree() wrong argument number

* Test wrong signature: string and list

* clean

* revert

Co-authored-by: Avi Avni <avi.avni@gmail.com>

* Add ipv6 capability (#2842)

* fix heap remove item (#2827)

* fix heap remove item

* remove utf8 deps

* add test

* wip

* wip

* all unit tests pass

* heap remove element should use pointer cmp instead of cmp cb

* spaces to tabs

Co-authored-by: swilly22 <roi@redislabs.com>
Co-authored-by: Roi Lipman <swilly22@users.noreply.github.com>

* bump version 2.10.6

* Improve edge deletion performance (#2758)

* improve edge deletion

* update simple timer

* improve edge deletion perf

* fix build

* fix test

* fix test

* clean

* address review

Co-authored-by: Roi Lipman <swilly22@users.noreply.github.com>

* update ramp

Co-authored-by: nafraf <nafraf@users.noreply.github.com>
Co-authored-by: Avi Avni <avi.avni@gmail.com>
Co-authored-by: Roi Lipman <swilly22@users.noreply.github.com>
Co-authored-by: Guy Korland <gkorland@gmail.com>
Co-authored-by: swilly22 <roi@redislabs.com>
AviAvni added a commit that referenced this pull request Jan 25, 2023
* do not cache query params (#2803)

* do not cache query params

* address PR comments

* fix leak

* fix test

* convert params to SIValues

* wip

* delay freeing of parsed params to after the query is parsed

* free parse params when freeing AST

* revert changes to ast_validations.c

* revert arithmetic_expression_construct changes

* emit an error when param value eval fails

Co-authored-by: Avi Avni <avi.avni@gmail.com>

* fix multi-hop traverse with name path (#2743)

* Add varLen property to QGEdge

* Test variable-length edge queries

* Fix spacing

* Fix test, remove direction

* Fix test

* Test zero length edge

* Init varLen in QGEdge_New()

* rename varLen to rangeLen

* Rewrite test11_range_length_edges()

* Use QGEdge_VariableLength() and QGEdge_RangeLength

* Replace QGEdge_RangeLength() by QGEdge_LengthOne()

* rename function

Co-authored-by: Roi Lipman <swilly22@users.noreply.github.com>
Co-authored-by: Avi Avni <avi.avni@gmail.com>

* Add ipv6 capability (#2842)

* fix heap remove item (#2827)

* fix heap remove item

* remove utf8 deps

* add test

* wip

* wip

* all unit tests pass

* heap remove element should use pointer cmp instead of cmp cb

* spaces to tabs

Co-authored-by: swilly22 <roi@redislabs.com>
Co-authored-by: Roi Lipman <swilly22@users.noreply.github.com>

* bump version 2.8.22

* update ramp

* Improve edge deletion performance (#2758)

* improve edge deletion

* update simple timer

* improve edge deletion perf

* fix build

* fix test

* fix test

* clean

* address review

Co-authored-by: Roi Lipman <swilly22@users.noreply.github.com>

* fix build

* fix build

* fix test

* fix

* fix test

* fix

* fix

* fix

Co-authored-by: Roi Lipman <swilly22@users.noreply.github.com>
Co-authored-by: Avi Avni <avi.avni@gmail.com>
Co-authored-by: nafraf <nafraf@users.noreply.github.com>
Co-authored-by: Guy Korland <gkorland@gmail.com>
Co-authored-by: swilly22 <roi@redislabs.com>
pnxguide pushed a commit to CMU-SPEED/RedisGraph that referenced this pull request Mar 22, 2023
* improve edge deletion

* update simple timer

* improve edge deletion perf

* fix build

* fix test

* fix test

* clean

* address review

Co-authored-by: Roi Lipman <swilly22@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
action:run-benchmark Trigger CI benchmarks
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants