Skip to content
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

Push recursive path length into operator #1555

Merged
merged 1 commit into from
May 21, 2023
Merged

Conversation

andyfengHKU
Copy link
Contributor

No description provided.

@codecov
Copy link

codecov bot commented May 20, 2023

Codecov Report

Patch coverage: 94.79% and project coverage change: +0.19 🎉

Comparison is base (deff05a) 91.71% compared to head (ac685e4) 91.90%.

❗ Current head ac685e4 differs from pull request most recent head 09f0cc7. Consider uploading reports for the commit 09f0cc7 to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1555      +/-   ##
==========================================
+ Coverage   91.71%   91.90%   +0.19%     
==========================================
  Files         695      693       -2     
  Lines       24998    24944      -54     
==========================================
- Hits        22926    22925       -1     
+ Misses       2072     2019      -53     
Impacted Files Coverage Δ
src/binder/bind/bind_copy.cpp 85.71% <ø> (+8.97%) ⬆️
src/common/types/types.cpp 91.18% <0.00%> (+0.27%) ⬆️
src/function/built_in_vector_operations.cpp 96.33% <ø> (-0.10%) ⬇️
src/function/vector_list_operation.cpp 89.66% <ø> (-0.07%) ⬇️
src/include/binder/binder.h 100.00% <ø> (ø)
src/include/binder/expression_binder.h 100.00% <ø> (ø)
src/include/function/built_in_vector_operations.h 100.00% <ø> (ø)
...inder/bind_expression/bind_function_expression.cpp 96.21% <92.85%> (-2.19%) ⬇️
src/binder/bind/bind_graph_pattern.cpp 94.80% <100.00%> (+0.06%) ⬆️
src/binder/bind/bind_projection_clause.cpp 97.95% <100.00%> (ø)
... and 9 more

... and 18 files with indirect coverage changes

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

offsetVectorPos, common::nodeID_t{path[pathLength - 1], tableID});
assert(offsetVectorPos < common::DEFAULT_VECTOR_CAPACITY);
assert(path[pathLength - 1] == currentDstOffset);
writeDstNodeOffsetAndLength(dstNodeIDVector, pathLengthVector, offsetVectorPos, tableID);
Copy link
Contributor

Choose a reason for hiding this comment

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

I'm a bit confused about the PR. so it looks like regardless of whether there is or there is not len(p) type expression, you always write path lengths to a value vector. Is that correct?

I was expecting to see a flag that you insert into these operators that will decide whether to write the lengths or not.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes I always write path length to a vector because it's cost is same as writing dst node offsets.

Trying to be smart about writing length is doable but codes becomes a lot complicated after I made the change because we need to switch for track path & length, path & !length, !path & length, !path & !length in multiple places. I decide to go for readability and always write length for now.

Using enum is fine. I've moved from bool to enum.

src/processor/mapper/map_extend.cpp Outdated Show resolved Hide resolved
@andyfengHKU andyfengHKU merged commit 983c3c2 into master May 21, 2023
7 checks passed
@andyfengHKU andyfengHKU deleted the recursive-length branch May 21, 2023 18:07
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.

None yet

2 participants