[
https://issues.apache.org/jira/browse/CALCITE-3963?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17157026#comment-17157026
]
Julian Hyde commented on CALCITE-3963:
--------------------------------------
bq. The minRowCount definition is for the RelNode, not for the RelSet or
RelSubset. How would it make sense to aggregate them?
I can't think of any other way to put it, so I'll repeat what I said earlier:
bq. If one RelNode thinks a query returns at least 1 row, and another
equivalent RelNode thinks that a query returns at least 2 rows, then the query
must return at least 2 rows.
Why is it NOT ok to take the greater of the two bounds? Do you not see that it
is beneficial to take the greater?
> Maintain logical properties at RelSet (equivalent group) instead of RelNode
> ---------------------------------------------------------------------------
>
> Key: CALCITE-3963
> URL: https://issues.apache.org/jira/browse/CALCITE-3963
> Project: Calcite
> Issue Type: Bug
> Reporter: Xiening Dai
> Assignee: Xiening Dai
> Priority: Major
> Time Spent: 1h
> Remaining Estimate: 0h
>
> Currently the logical properties (such as row count, distinct row count, etc)
> are maintained at RelNode level. This creates a number of meta data
> consistency problems, e.g. CALCITE-1048, CALCITE-2166.
> In theory, all RelNodes in a RelSet should share the same logical properties
> per definition of relational equivalence. So it makes more sense to keep
> logical properties at RelSet level, rather than the RelNode. And such
> properties shouldn't change when new sub set is created or subset's best is
> changed.
> Specifically I think below build in metadata should fall into the logical
> properties category -
> Selectivity
> UniqueKeys
> ColumnUniqueness
> RowCount
> MaxRowCount
> MinRowCount
> DistinctRowCount
> Size (averageRowSize, averageColumnSize)
>
>
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)