souffle
souffle copied to clipboard
WIP Add support for recursive aggregate
Codecov Report
Merging #2263 (917a36f) into master (bec3083) will decrease coverage by
0.22%
. The diff coverage is32.67%
.
:exclamation: Current head 917a36f differs from pull request most recent head dd9c087. Consider uploading reports for the commit dd9c087 to get more accurate results
@@ Coverage Diff @@
## master #2263 +/- ##
==========================================
- Coverage 76.92% 76.69% -0.23%
==========================================
Files 455 456 +1
Lines 28658 28638 -20
==========================================
- Hits 22045 21964 -81
- Misses 6613 6674 +61
Impacted Files | Coverage Δ | |
---|---|---|
src/RelationTag.h | 46.05% <0.00%> (-6.19%) |
:arrow_down: |
src/parser/parser.yy | 94.23% <0.00%> (-0.92%) |
:arrow_down: |
src/ram/AggregateExistenceCheck.h | 0.00% <0.00%> (ø) |
|
src/ram/analysis/Complexity.cpp | 90.90% <0.00%> (-9.10%) |
:arrow_down: |
src/ram/analysis/Index.h | 98.66% <ø> (ø) |
|
src/ram/analysis/Level.cpp | 59.16% <0.00%> (-2.58%) |
:arrow_down: |
src/synthesiser/Synthesiser.cpp | 81.78% <6.25%> (-1.35%) |
:arrow_down: |
src/ram/analysis/Index.cpp | 87.95% <7.69%> (-3.65%) |
:arrow_down: |
src/ram/utility/Visitor.h | 54.47% <50.00%> (-0.07%) |
:arrow_down: |
src/synthesiser/Relation.cpp | 95.17% <50.00%> (-3.04%) |
:arrow_down: |
... and 15 more |
I looked at the WIP again. As discussed, we need a semantic check for recursive-aggregate relations. I would check the following:
- [ ] The arity of recursive-aggregate relations must be greater than or equal to two.
- [ ] The type of the last attribute cannot be of type symbol if the aggregation is a sum
- [ ] If the type of the last attribute is symbol, and the aggregation is min/max perhaps a warning should be issued that this is not the usual lexorder.
Please bring the source files into the right format using clang-format -i <file>
. Following source files are not formatted:
src/RelationTag.h
src/synthesiser/Relation.h
Please also check whether I/O is working. The auxiliary arity of one may hide the last column.
Please also check whether I/O is working. The auxiliary arity of one may hide the last column.
I/O is working fine - all attributes are printed.
The technical choice of introducing new btree representations does not ease adding other aggregation operators in the future.