[GitHub] [calcite] chunweilei opened a new pull request #1848: [CALCITE-3845] CASE WHEN expression with nullability CAST is considered as reduced wrongly in ReduceExpressionsRule

2020-03-05 Thread GitBox
chunweilei opened a new pull request #1848: [CALCITE-3845] CASE WHEN expression 
with nullability CAST is considered as reduced wrongly in ReduceExpressionsRule
URL: https://github.com/apache/calcite/pull/1848
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] ritesh-kapoor opened a new pull request #1847: [CALCITE-3647] MySQL COMPRESS function support

2020-03-05 Thread GitBox
ritesh-kapoor opened a new pull request #1847: [CALCITE-3647] MySQL COMPRESS 
function support
URL: https://github.com/apache/calcite/pull/1847
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] hsyuan commented on a change in pull request #1840: [CALCITE-3753] Remove rule queue importance

2020-03-05 Thread GitBox
hsyuan commented on a change in pull request #1840: [CALCITE-3753] Remove rule 
queue importance
URL: https://github.com/apache/calcite/pull/1840#discussion_r388684093
 
 

 ##
 File path: core/src/test/resources/sql/sub-query.iq
 ##
 @@ -831,7 +831,7 @@ EnumerableCalc(expr#0..3=[{inputs}], expr#4=[NOT($t2)], 
expr#5=[IS TRUE($t4)], e
 EnumerableLimit(fetch=[1])
   EnumerableSort(sort0=[$0], dir0=[DESC])
 EnumerableAggregate(group=[{0}], c=[COUNT()])
-  EnumerableCalc(expr#0..2=[{inputs}], expr#3=[false], cs=[$t3])
+  EnumerableCalc(expr#0..2=[{inputs}], expr#3=[false], expr#4=[123], 
expr#5=[null:INTEGER], expr#6=[=($t4, $t5)], expr#7=[IS NULL($t5)], 
expr#8=[OR($t6, $t7)], cs=[$t3], $condition=[$t8])
 
 Review comment:
   @vlsi I fixed the plan diffs as requested.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] vlsi commented on a change in pull request #1840: [CALCITE-3753] Remove rule queue importance

2020-03-05 Thread GitBox
vlsi commented on a change in pull request #1840: [CALCITE-3753] Remove rule 
queue importance
URL: https://github.com/apache/calcite/pull/1840#discussion_r388579721
 
 

 ##
 File path: core/src/test/resources/sql/sub-query.iq
 ##
 @@ -831,7 +831,7 @@ EnumerableCalc(expr#0..3=[{inputs}], expr#4=[NOT($t2)], 
expr#5=[IS TRUE($t4)], e
 EnumerableLimit(fetch=[1])
   EnumerableSort(sort0=[$0], dir0=[DESC])
 EnumerableAggregate(group=[{0}], c=[COUNT()])
-  EnumerableCalc(expr#0..2=[{inputs}], expr#3=[false], cs=[$t3])
+  EnumerableCalc(expr#0..2=[{inputs}], expr#3=[false], expr#4=[123], 
expr#5=[null:INTEGER], expr#6=[=($t4, $t5)], expr#7=[IS NULL($t5)], 
expr#8=[OR($t6, $t7)], cs=[$t3], $condition=[$t8])
 
 Review comment:
   OK. You propose a change. It results in generating bad plans, thus it 
introduces a technical regression. There's a technical justification for -1.
   
   I know cost model has awful lot of inconsistencies. However, it turns out 
that all those 100 tiny inconsistencies cancel each other, and Calcite manages 
to produce "sane" plans.
   Now you fix one or two such defects (which has good merit), however, the net 
result becomes that there are 98 inconsistencies in the cost model which **no 
longer** cancel each other.
   
   Calcite purpose is optimizer, and it is really sad to introduce regressions 
to the optimizer.
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] hsyuan commented on a change in pull request #1840: [CALCITE-3753] Remove rule queue importance

2020-03-05 Thread GitBox
hsyuan commented on a change in pull request #1840: [CALCITE-3753] Remove rule 
queue importance
URL: https://github.com/apache/calcite/pull/1840#discussion_r388577684
 
 

 ##
 File path: core/src/test/resources/sql/sub-query.iq
 ##
 @@ -831,7 +831,7 @@ EnumerableCalc(expr#0..3=[{inputs}], expr#4=[NOT($t2)], 
expr#5=[IS TRUE($t4)], e
 EnumerableLimit(fetch=[1])
   EnumerableSort(sort0=[$0], dir0=[DESC])
 EnumerableAggregate(group=[{0}], c=[COUNT()])
-  EnumerableCalc(expr#0..2=[{inputs}], expr#3=[false], cs=[$t3])
+  EnumerableCalc(expr#0..2=[{inputs}], expr#3=[false], expr#4=[123], 
expr#5=[null:INTEGER], expr#6=[=($t4, $t5)], expr#7=[IS NULL($t5)], 
expr#8=[OR($t6, $t7)], cs=[$t3], $condition=[$t8])
 
 Review comment:
   As a human being, you know it is a bad plan, but the cost model thinks it is 
a better plan. Shouldn't you blame the cost model?


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] hsyuan commented on a change in pull request #1840: [CALCITE-3753] Remove rule queue importance

2020-03-05 Thread GitBox
hsyuan commented on a change in pull request #1840: [CALCITE-3753] Remove rule 
queue importance
URL: https://github.com/apache/calcite/pull/1840#discussion_r388576223
 
 

 ##
 File path: core/src/test/resources/sql/sub-query.iq
 ##
 @@ -831,7 +831,7 @@ EnumerableCalc(expr#0..3=[{inputs}], expr#4=[NOT($t2)], 
expr#5=[IS TRUE($t4)], e
 EnumerableLimit(fetch=[1])
   EnumerableSort(sort0=[$0], dir0=[DESC])
 EnumerableAggregate(group=[{0}], c=[COUNT()])
-  EnumerableCalc(expr#0..2=[{inputs}], expr#3=[false], cs=[$t3])
+  EnumerableCalc(expr#0..2=[{inputs}], expr#3=[false], expr#4=[123], 
expr#5=[null:INTEGER], expr#6=[=($t4, $t5)], expr#7=[IS NULL($t5)], 
expr#8=[OR($t6, $t7)], cs=[$t3], $condition=[$t8])
 
 Review comment:
   How do you know it is skipping some rules? Any evidence?


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] hsyuan commented on a change in pull request #1840: [CALCITE-3753] Remove rule queue importance

2020-03-05 Thread GitBox
hsyuan commented on a change in pull request #1840: [CALCITE-3753] Remove rule 
queue importance
URL: https://github.com/apache/calcite/pull/1840#discussion_r388575690
 
 

 ##
 File path: core/src/test/java/org/apache/calcite/test/LatticeTest.java
 ##
 @@ -677,10 +677,10 @@ private void checkTileAlgorithm(String statisticProvider,
 + "join \"foodmart\".\"time_by_day\" using (\"time_id\")\n"
 + "group by \"the_year\"")
 .enableMaterializations(true)
-.explainContains("EnumerableCalc(expr#0=[{inputs}], expr#1=[IS NOT 
NULL($t0)], "
-+ "expr#2=[1:BIGINT], expr#3=[0:BIGINT], expr#4=[CASE($t1, $t2, 
$t3)], C=[$t4])\n"
-+ "  EnumerableAggregate(group=[{0}])\n"
-+ "EnumerableTableScan(table=[[adhoc, m{32, 36}]])")
+.explainContains("EnumerableCalc(expr#0..1=[{inputs}], C=[$t1])\n"
++ "  EnumerableAggregate(group=[{0}], C=[COUNT($0)])\n"
++ "EnumerableAggregate(group=[{0}])\n"
 
 Review comment:
   I think it is orthogonal. should be done is a separate PR. The issue of cost 
model exists before this change. 


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] vlsi commented on a change in pull request #1840: [CALCITE-3753] Remove rule queue importance

2020-03-05 Thread GitBox
vlsi commented on a change in pull request #1840: [CALCITE-3753] Remove rule 
queue importance
URL: https://github.com/apache/calcite/pull/1840#discussion_r388573407
 
 

 ##
 File path: core/src/test/java/org/apache/calcite/test/LatticeTest.java
 ##
 @@ -677,10 +677,10 @@ private void checkTileAlgorithm(String statisticProvider,
 + "join \"foodmart\".\"time_by_day\" using (\"time_id\")\n"
 + "group by \"the_year\"")
 .enableMaterializations(true)
-.explainContains("EnumerableCalc(expr#0=[{inputs}], expr#1=[IS NOT 
NULL($t0)], "
-+ "expr#2=[1:BIGINT], expr#3=[0:BIGINT], expr#4=[CASE($t1, $t2, 
$t3)], C=[$t4])\n"
-+ "  EnumerableAggregate(group=[{0}])\n"
-+ "EnumerableTableScan(table=[[adhoc, m{32, 36}]])")
+.explainContains("EnumerableCalc(expr#0..1=[{inputs}], C=[$t1])\n"
++ "  EnumerableAggregate(group=[{0}], C=[COUNT($0)])\n"
++ "EnumerableAggregate(group=[{0}])\n"
 
 Review comment:
   Who will fix the costing model then?
   I think it is unfair to merge a change that is not really compatible with 
the costing model.
   
   If the change to optimizer requires adjustments to the costing model, then 
could you please do that in a single PR, so we see the net changes for both 
plans and the response times?


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] vlsi commented on a change in pull request #1840: [CALCITE-3753] Remove rule queue importance

2020-03-05 Thread GitBox
vlsi commented on a change in pull request #1840: [CALCITE-3753] Remove rule 
queue importance
URL: https://github.com/apache/calcite/pull/1840#discussion_r388573407
 
 

 ##
 File path: core/src/test/java/org/apache/calcite/test/LatticeTest.java
 ##
 @@ -677,10 +677,10 @@ private void checkTileAlgorithm(String statisticProvider,
 + "join \"foodmart\".\"time_by_day\" using (\"time_id\")\n"
 + "group by \"the_year\"")
 .enableMaterializations(true)
-.explainContains("EnumerableCalc(expr#0=[{inputs}], expr#1=[IS NOT 
NULL($t0)], "
-+ "expr#2=[1:BIGINT], expr#3=[0:BIGINT], expr#4=[CASE($t1, $t2, 
$t3)], C=[$t4])\n"
-+ "  EnumerableAggregate(group=[{0}])\n"
-+ "EnumerableTableScan(table=[[adhoc, m{32, 36}]])")
+.explainContains("EnumerableCalc(expr#0..1=[{inputs}], C=[$t1])\n"
++ "  EnumerableAggregate(group=[{0}], C=[COUNT($0)])\n"
++ "EnumerableAggregate(group=[{0}])\n"
 
 Review comment:
   Who will fix the costing model then?
   I think it is unfair to merge a change that is not really compatible with 
the costing model.
   
   If the change to optimizer requires adjustments to the costing model, then 
could you please do that in a single commit, so we see the net changes for both 
plans and the response times?


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] hsyuan commented on a change in pull request #1840: [CALCITE-3753] Remove rule queue importance

2020-03-05 Thread GitBox
hsyuan commented on a change in pull request #1840: [CALCITE-3753] Remove rule 
queue importance
URL: https://github.com/apache/calcite/pull/1840#discussion_r388571568
 
 

 ##
 File path: core/src/test/java/org/apache/calcite/test/LatticeTest.java
 ##
 @@ -677,10 +677,10 @@ private void checkTileAlgorithm(String statisticProvider,
 + "join \"foodmart\".\"time_by_day\" using (\"time_id\")\n"
 + "group by \"the_year\"")
 .enableMaterializations(true)
-.explainContains("EnumerableCalc(expr#0=[{inputs}], expr#1=[IS NOT 
NULL($t0)], "
-+ "expr#2=[1:BIGINT], expr#3=[0:BIGINT], expr#4=[CASE($t1, $t2, 
$t3)], C=[$t4])\n"
-+ "  EnumerableAggregate(group=[{0}])\n"
-+ "EnumerableTableScan(table=[[adhoc, m{32, 36}]])")
+.explainContains("EnumerableCalc(expr#0..1=[{inputs}], C=[$t1])\n"
++ "  EnumerableAggregate(group=[{0}], C=[COUNT($0)])\n"
++ "EnumerableAggregate(group=[{0}])\n"
 
 Review comment:
   It does have the original plan's alternative, but from cost model's 
perspective, the new one is a cheaper plan. 


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] vlsi commented on a change in pull request #1840: [CALCITE-3753] Remove rule queue importance

2020-03-05 Thread GitBox
vlsi commented on a change in pull request #1840: [CALCITE-3753] Remove rule 
queue importance
URL: https://github.com/apache/calcite/pull/1840#discussion_r388570453
 
 

 ##
 File path: core/src/test/resources/sql/sub-query.iq
 ##
 @@ -831,7 +831,7 @@ EnumerableCalc(expr#0..3=[{inputs}], expr#4=[NOT($t2)], 
expr#5=[IS TRUE($t4)], e
 EnumerableLimit(fetch=[1])
   EnumerableSort(sort0=[$0], dir0=[DESC])
 EnumerableAggregate(group=[{0}], c=[COUNT()])
-  EnumerableCalc(expr#0..2=[{inputs}], expr#3=[false], cs=[$t3])
+  EnumerableCalc(expr#0..2=[{inputs}], expr#3=[false], expr#4=[123], 
expr#5=[null:INTEGER], expr#6=[=($t4, $t5)], expr#7=[IS NULL($t5)], 
expr#8=[OR($t6, $t7)], cs=[$t3], $condition=[$t8])
 
 Review comment:
   Let me put it in another way: you change the optimizer, and now it favours 
bad plans.
   What the optimizer now does it introduces a dummy always_true filter, and it 
thinks the filter would reduce the number of rows and so on. It does not look 
like a well-behaving optimizer :-/
   
   Even though the change reduces `slow test` execution, that reduction might 
be the result of "skipping some rules" rather than removing importance.
   
   So currently it looks like some rules do not fire which result in a 
noticeable amount of useless predicates floating around.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] vlsi commented on a change in pull request #1840: [CALCITE-3753] Remove rule queue importance

2020-03-05 Thread GitBox
vlsi commented on a change in pull request #1840: [CALCITE-3753] Remove rule 
queue importance
URL: https://github.com/apache/calcite/pull/1840#discussion_r388570453
 
 

 ##
 File path: core/src/test/resources/sql/sub-query.iq
 ##
 @@ -831,7 +831,7 @@ EnumerableCalc(expr#0..3=[{inputs}], expr#4=[NOT($t2)], 
expr#5=[IS TRUE($t4)], e
 EnumerableLimit(fetch=[1])
   EnumerableSort(sort0=[$0], dir0=[DESC])
 EnumerableAggregate(group=[{0}], c=[COUNT()])
-  EnumerableCalc(expr#0..2=[{inputs}], expr#3=[false], cs=[$t3])
+  EnumerableCalc(expr#0..2=[{inputs}], expr#3=[false], expr#4=[123], 
expr#5=[null:INTEGER], expr#6=[=($t4, $t5)], expr#7=[IS NULL($t5)], 
expr#8=[OR($t6, $t7)], cs=[$t3], $condition=[$t8])
 
 Review comment:
   Let me put it in another way: you change the optimizer, and now it favours 
bad plans.
   What it does it introduces a dummy always_true filter, and it thinks the 
filter would reduce the number of rows and so on. It does not look like a 
well-behaving optimizer :-/
   
   Even though the change reduces `slow test` execution, that reduction might 
be the result of "skipping some rules" rather than removing importance.
   
   So currently it looks like some rules do not fire which result in a 
noticeable amount of useless predicates floating around.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] hsyuan commented on a change in pull request #1840: [CALCITE-3753] Remove rule queue importance

2020-03-05 Thread GitBox
hsyuan commented on a change in pull request #1840: [CALCITE-3753] Remove rule 
queue importance
URL: https://github.com/apache/calcite/pull/1840#discussion_r388565046
 
 

 ##
 File path: core/src/test/resources/sql/sub-query.iq
 ##
 @@ -831,7 +831,7 @@ EnumerableCalc(expr#0..3=[{inputs}], expr#4=[NOT($t2)], 
expr#5=[IS TRUE($t4)], e
 EnumerableLimit(fetch=[1])
   EnumerableSort(sort0=[$0], dir0=[DESC])
 EnumerableAggregate(group=[{0}], c=[COUNT()])
-  EnumerableCalc(expr#0..2=[{inputs}], expr#3=[false], cs=[$t3])
+  EnumerableCalc(expr#0..2=[{inputs}], expr#3=[false], expr#4=[123], 
expr#5=[null:INTEGER], expr#6=[=($t4, $t5)], expr#7=[IS NULL($t5)], 
expr#8=[OR($t6, $t7)], cs=[$t3], $condition=[$t8])
 
 Review comment:
   The cost model doesn't think it is a degradation:
   
![image](https://user-images.githubusercontent.com/15352793/76025526-bc272500-5ef2-11ea-89a1-e04776234a55.png)
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[calcite] branch master updated (4bd1328 -> ebc5070)

2020-03-05 Thread danny0405
This is an automated email from the ASF dual-hosted git repository.

danny0405 pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/calcite.git.


from 4bd1328  Add 1.22.0 release announcement
 add ebc5070  Site: Fix links to javadoc

No new revisions were added by this update.

Summary of changes:
 site/README.md  | 18 --
 site/_config.yml| 10 +++---
 site/_data/docs.yml |  1 -
 site/_docs/api.md   |  2 +-
 site/_docs/testapi.md   | 28 
 site/_includes/section_nav.html |  2 +-
 site/docker-compose.yml |  2 +-
 7 files changed, 14 insertions(+), 49 deletions(-)
 delete mode 100644 site/_docs/testapi.md



[GitHub] [calcite] vlsi commented on a change in pull request #1827: [CALCITE-3821] RelOptUtil::containsMultisetOrWindowedAgg doesn't real…

2020-03-05 Thread GitBox
vlsi commented on a change in pull request #1827: [CALCITE-3821] 
RelOptUtil::containsMultisetOrWindowedAgg doesn't real…
URL: https://github.com/apache/calcite/pull/1827#discussion_r388221047
 
 

 ##
 File path: core/src/main/java/org/apache/calcite/plan/RelOptUtil.java
 ##
 @@ -3418,28 +3415,19 @@ public static RelNode projectMapping(
 return projectFactory.createProject(rel, ImmutableList.of(), exprList, 
outputNameList);
   }
 
-  /** Predicate for whether a {@link Calc} contains multisets or windowed
-   * aggregates. */
-  public static boolean containsMultisetOrWindowedAgg(Calc calc) {
-return !(B
-&& RexMultisetUtil.containsMultiset(calc.getProgram())
-|| calc.getProgram().containsAggs());
+  /** Predicate for if a {@link Calc} does not contain windowed aggregates. */
+  public static boolean notContainsWindowedAgg(Calc calc) {
 
 Review comment:
   This look like public API breakage with no clear deprecation plan.
   
   @xndai , @hsyuan was it really intended?


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] vlsi commented on a change in pull request #1827: [CALCITE-3821] RelOptUtil::containsMultisetOrWindowedAgg doesn't real…

2020-03-05 Thread GitBox
vlsi commented on a change in pull request #1827: [CALCITE-3821] 
RelOptUtil::containsMultisetOrWindowedAgg doesn't real…
URL: https://github.com/apache/calcite/pull/1827#discussion_r388221047
 
 

 ##
 File path: core/src/main/java/org/apache/calcite/plan/RelOptUtil.java
 ##
 @@ -3418,28 +3415,19 @@ public static RelNode projectMapping(
 return projectFactory.createProject(rel, ImmutableList.of(), exprList, 
outputNameList);
   }
 
-  /** Predicate for whether a {@link Calc} contains multisets or windowed
-   * aggregates. */
-  public static boolean containsMultisetOrWindowedAgg(Calc calc) {
-return !(B
-&& RexMultisetUtil.containsMultiset(calc.getProgram())
-|| calc.getProgram().containsAggs());
+  /** Predicate for if a {@link Calc} does not contain windowed aggregates. */
+  public static boolean notContainsWindowedAgg(Calc calc) {
 
 Review comment:
   This looks like a public API breakage with no clear deprecation plan.
   
   @xndai , @hsyuan was it really intended?


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] vlsi commented on issue #1845: it is not secure

2020-03-05 Thread GitBox
vlsi commented on issue #1845: it is not secure
URL: https://github.com/apache/calcite/pull/1845#issuecomment-595166713
 
 
   duplicates #1846


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] vlsi closed pull request #1845: it is not secure

2020-03-05 Thread GitBox
vlsi closed pull request #1845: it is not secure
URL: https://github.com/apache/calcite/pull/1845
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] vlsi commented on a change in pull request #1840: [CALCITE-3753] Remove rule queue importance

2020-03-05 Thread GitBox
vlsi commented on a change in pull request #1840: [CALCITE-3753] Remove rule 
queue importance
URL: https://github.com/apache/calcite/pull/1840#discussion_r388218456
 
 

 ##
 File path: core/src/test/resources/sql/sub-query.iq
 ##
 @@ -831,7 +831,7 @@ EnumerableCalc(expr#0..3=[{inputs}], expr#4=[NOT($t2)], 
expr#5=[IS TRUE($t4)], e
 EnumerableLimit(fetch=[1])
   EnumerableSort(sort0=[$0], dir0=[DESC])
 EnumerableAggregate(group=[{0}], c=[COUNT()])
-  EnumerableCalc(expr#0..2=[{inputs}], expr#3=[false], cs=[$t3])
+  EnumerableCalc(expr#0..2=[{inputs}], expr#3=[false], expr#4=[123], 
expr#5=[null:INTEGER], expr#6=[=($t4, $t5)], expr#7=[IS NULL($t5)], 
expr#8=[OR($t6, $t7)], cs=[$t3], $condition=[$t8])
 
 Review comment:
   This looks like a plan degradation.
   For instance `expr#4=[123], expr#5=[null:INTEGER], expr#6=[=($t4, $t5)]` is 
the same as `null:BOOLEAN`.
   
   Do you know the reason for this plan degradation?


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] vlsi commented on a change in pull request #1840: [CALCITE-3753] Remove rule queue importance

2020-03-05 Thread GitBox
vlsi commented on a change in pull request #1840: [CALCITE-3753] Remove rule 
queue importance
URL: https://github.com/apache/calcite/pull/1840#discussion_r388213305
 
 

 ##
 File path: core/src/test/java/org/apache/calcite/test/LatticeTest.java
 ##
 @@ -677,10 +677,10 @@ private void checkTileAlgorithm(String statisticProvider,
 + "join \"foodmart\".\"time_by_day\" using (\"time_id\")\n"
 + "group by \"the_year\"")
 .enableMaterializations(true)
-.explainContains("EnumerableCalc(expr#0=[{inputs}], expr#1=[IS NOT 
NULL($t0)], "
-+ "expr#2=[1:BIGINT], expr#3=[0:BIGINT], expr#4=[CASE($t1, $t2, 
$t3)], C=[$t4])\n"
-+ "  EnumerableAggregate(group=[{0}])\n"
-+ "EnumerableTableScan(table=[[adhoc, m{32, 36}]])")
+.explainContains("EnumerableCalc(expr#0..1=[{inputs}], C=[$t1])\n"
++ "  EnumerableAggregate(group=[{0}], C=[COUNT($0)])\n"
++ "EnumerableAggregate(group=[{0}])\n"
 
 Review comment:
   This looks like a plan degradation, doesn't it?


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[calcite] branch master updated: Add 1.22.0 release announcement

2020-03-05 Thread danny0405
This is an automated email from the ASF dual-hosted git repository.

danny0405 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/calcite.git


The following commit(s) were added to refs/heads/master by this push:
 new 4bd1328  Add 1.22.0 release announcement
4bd1328 is described below

commit 4bd13283dbef1718af7a43f3162c588505ca744a
Author: yuzhao.cyz 
AuthorDate: Thu Mar 5 16:34:18 2020 +0800

Add 1.22.0 release announcement
---
 site/_posts/2020-03-05-release-1.22.0.md | 43 
 site/downloads/index.md  |  5 +++-
 2 files changed, 47 insertions(+), 1 deletion(-)

diff --git a/site/_posts/2020-03-05-release-1.22.0.md 
b/site/_posts/2020-03-05-release-1.22.0.md
new file mode 100644
index 000..daa181a
--- /dev/null
+++ b/site/_posts/2020-03-05-release-1.22.0.md
@@ -0,0 +1,43 @@
+---
+layout: news_item
+date: "2020-03-05 17:17:00 +0800"
+author: danny0405
+version: 1.22.0
+categories: [release]
+tag: rel/v1.22.0
+sha: 537b8dbb4b58c61b6c573eb07a51b8d38896a1ff
+---
+
+
+The [Apache Calcite PMC]({{ site.baseurl }})
+is pleased to announce
+[Apache Calcite release 1.22.0]({{ site.baseurl }}/docs/history.html#v1-22-0).
+
+This release comes five months after 1.21.0. It includes more than 250 
resolved issues, comprising a large number of new features as well as general 
improvements and bug-fixes. Among others, it is worth highlighting the 
following.
+
+* Supports SQL hints for different kind of relational expressions (https://issues.apache.org/jira/browse/CALCITE-482";>CALCITE-482)
+* A new Redis adaptor (https://issues.apache.org/jira/browse/CALCITE-3510";>CALCITE-3510)
+* More Oracle and MySQL functions are supported, i.e. Oracle `XML` function 
(https://issues.apache.org/jira/browse/CALCITE-3579";>CALCITE-3579, 
https://issues.apache.org/jira/browse/CALCITE-3580";>CALCITE-3580), 
MySQL math functions (https://issues.apache.org/jira/browse/CALCITE-3684";>CALCITE-3684, https://issues.apache.org/jira/browse/CALCITE-3695";>CALCITE-3695, https://issues.apache.org/jira/browse/CALCITE-3707";>CALCITE-3707)
+
+We have also fixed some important bugs:
+* The metadata cache is fixed for rare cases that `RelSet`s are merging (https://issues.apache.org/jira/browse/CALCITE-2018";>CALCITE-2018)
+* The `GROUP_ID` now returns correct results (https://issues.apache.org/jira/browse/CALCITE-1824";>CALCITE-1824)
+* `CORRELATE` row count estimation has been fixed, it is always 1 before (https://issues.apache.org/jira/browse/CALCITE-3711";>CALCITE-3711)
+* The modulus precision inference of `DECIMAL`s has been fixed (https://issues.apache.org/jira/browse/CALCITE-3435";>CALCITE-3435)
diff --git a/site/downloads/index.md b/site/downloads/index.md
index 394eb89..d75fc7e 100644
--- a/site/downloads/index.md
+++ b/site/downloads/index.md
@@ -50,7 +50,10 @@ Release  | Date   | Commit   | Download
 {% endcomment %}{% capture d1 %}{{ post.date | date: "%F"}}{% endcapture %}{% 
comment %}
 {% endcomment %}{% capture d2 %}2017-08-31{% endcapture %}{% comment %}
 {% endcomment %}{% capture d3 %}2018-06-01{% endcapture %}{% comment %}
-{% endcomment %}{% if d1 > d2 %}{% comment %}
+{% endcomment %}{% capture d4 %}2020-03-01{% endcapture %}{% comment %}
+{% endcomment %}{% if d1 > d4 %}{% comment %}
+{% endcomment %}{% assign digest = "sha512" %}{% comment %}
+{% endcomment %}{% else if d1 > d2 %}{% comment %}
 {% endcomment %}{% assign digest = "sha256" %}{% comment %}
 {% endcomment %}{% else %}{% comment %}
 {% endcomment %}{% assign digest = "md5" %}{% comment %}



[calcite] 01/01: Add 1.22.0 release announcement

2020-03-05 Thread danny0405
This is an automated email from the ASF dual-hosted git repository.

danny0405 pushed a commit to branch site
in repository https://gitbox.apache.org/repos/asf/calcite.git

commit bca73e258ef2eb73bc447176dc231ed66e23be50
Author: yuzhao.cyz 
AuthorDate: Thu Mar 5 16:34:18 2020 +0800

Add 1.22.0 release announcement
---
 site/_posts/2020-03-05-release-1.22.0.md | 43 
 site/downloads/index.md  |  5 +++-
 2 files changed, 47 insertions(+), 1 deletion(-)

diff --git a/site/_posts/2020-03-05-release-1.22.0.md 
b/site/_posts/2020-03-05-release-1.22.0.md
new file mode 100644
index 000..daa181a
--- /dev/null
+++ b/site/_posts/2020-03-05-release-1.22.0.md
@@ -0,0 +1,43 @@
+---
+layout: news_item
+date: "2020-03-05 17:17:00 +0800"
+author: danny0405
+version: 1.22.0
+categories: [release]
+tag: rel/v1.22.0
+sha: 537b8dbb4b58c61b6c573eb07a51b8d38896a1ff
+---
+
+
+The [Apache Calcite PMC]({{ site.baseurl }})
+is pleased to announce
+[Apache Calcite release 1.22.0]({{ site.baseurl }}/docs/history.html#v1-22-0).
+
+This release comes five months after 1.21.0. It includes more than 250 
resolved issues, comprising a large number of new features as well as general 
improvements and bug-fixes. Among others, it is worth highlighting the 
following.
+
+* Supports SQL hints for different kind of relational expressions (https://issues.apache.org/jira/browse/CALCITE-482";>CALCITE-482)
+* A new Redis adaptor (https://issues.apache.org/jira/browse/CALCITE-3510";>CALCITE-3510)
+* More Oracle and MySQL functions are supported, i.e. Oracle `XML` function 
(https://issues.apache.org/jira/browse/CALCITE-3579";>CALCITE-3579, 
https://issues.apache.org/jira/browse/CALCITE-3580";>CALCITE-3580), 
MySQL math functions (https://issues.apache.org/jira/browse/CALCITE-3684";>CALCITE-3684, https://issues.apache.org/jira/browse/CALCITE-3695";>CALCITE-3695, https://issues.apache.org/jira/browse/CALCITE-3707";>CALCITE-3707)
+
+We have also fixed some important bugs:
+* The metadata cache is fixed for rare cases that `RelSet`s are merging (https://issues.apache.org/jira/browse/CALCITE-2018";>CALCITE-2018)
+* The `GROUP_ID` now returns correct results (https://issues.apache.org/jira/browse/CALCITE-1824";>CALCITE-1824)
+* `CORRELATE` row count estimation has been fixed, it is always 1 before (https://issues.apache.org/jira/browse/CALCITE-3711";>CALCITE-3711)
+* The modulus precision inference of `DECIMAL`s has been fixed (https://issues.apache.org/jira/browse/CALCITE-3435";>CALCITE-3435)
diff --git a/site/downloads/index.md b/site/downloads/index.md
index 394eb89..d75fc7e 100644
--- a/site/downloads/index.md
+++ b/site/downloads/index.md
@@ -50,7 +50,10 @@ Release  | Date   | Commit   | Download
 {% endcomment %}{% capture d1 %}{{ post.date | date: "%F"}}{% endcapture %}{% 
comment %}
 {% endcomment %}{% capture d2 %}2017-08-31{% endcapture %}{% comment %}
 {% endcomment %}{% capture d3 %}2018-06-01{% endcapture %}{% comment %}
-{% endcomment %}{% if d1 > d2 %}{% comment %}
+{% endcomment %}{% capture d4 %}2020-03-01{% endcapture %}{% comment %}
+{% endcomment %}{% if d1 > d4 %}{% comment %}
+{% endcomment %}{% assign digest = "sha512" %}{% comment %}
+{% endcomment %}{% else if d1 > d2 %}{% comment %}
 {% endcomment %}{% assign digest = "sha256" %}{% comment %}
 {% endcomment %}{% else %}{% comment %}
 {% endcomment %}{% assign digest = "md5" %}{% comment %}



[calcite] branch branch-1.22 updated (20c9b73 -> 7655bd7)

2020-03-05 Thread danny0405
This is an automated email from the ASF dual-hosted git repository.

danny0405 pushed a change to branch branch-1.22
in repository https://gitbox.apache.org/repos/asf/calcite.git.


 discard 20c9b73  Add 1.22.0 release announcement
 new 7655bd7  Add 1.22.0 release announcement

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (20c9b73)
\
 N -- N -- N   refs/heads/branch-1.22 (7655bd7)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 site/downloads/index.md | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)



[calcite] 01/01: Add 1.22.0 release announcement

2020-03-05 Thread danny0405
This is an automated email from the ASF dual-hosted git repository.

danny0405 pushed a commit to branch branch-1.22
in repository https://gitbox.apache.org/repos/asf/calcite.git

commit 7655bd735f10de5be1eca8bb9af475b3b2ac63b6
Author: yuzhao.cyz 
AuthorDate: Thu Mar 5 16:34:18 2020 +0800

Add 1.22.0 release announcement
---
 site/_posts/2020-03-05-release-1.22.0.md | 43 
 site/downloads/index.md  |  5 +++-
 2 files changed, 47 insertions(+), 1 deletion(-)

diff --git a/site/_posts/2020-03-05-release-1.22.0.md 
b/site/_posts/2020-03-05-release-1.22.0.md
new file mode 100644
index 000..daa181a
--- /dev/null
+++ b/site/_posts/2020-03-05-release-1.22.0.md
@@ -0,0 +1,43 @@
+---
+layout: news_item
+date: "2020-03-05 17:17:00 +0800"
+author: danny0405
+version: 1.22.0
+categories: [release]
+tag: rel/v1.22.0
+sha: 537b8dbb4b58c61b6c573eb07a51b8d38896a1ff
+---
+
+
+The [Apache Calcite PMC]({{ site.baseurl }})
+is pleased to announce
+[Apache Calcite release 1.22.0]({{ site.baseurl }}/docs/history.html#v1-22-0).
+
+This release comes five months after 1.21.0. It includes more than 250 
resolved issues, comprising a large number of new features as well as general 
improvements and bug-fixes. Among others, it is worth highlighting the 
following.
+
+* Supports SQL hints for different kind of relational expressions (https://issues.apache.org/jira/browse/CALCITE-482";>CALCITE-482)
+* A new Redis adaptor (https://issues.apache.org/jira/browse/CALCITE-3510";>CALCITE-3510)
+* More Oracle and MySQL functions are supported, i.e. Oracle `XML` function 
(https://issues.apache.org/jira/browse/CALCITE-3579";>CALCITE-3579, 
https://issues.apache.org/jira/browse/CALCITE-3580";>CALCITE-3580), 
MySQL math functions (https://issues.apache.org/jira/browse/CALCITE-3684";>CALCITE-3684, https://issues.apache.org/jira/browse/CALCITE-3695";>CALCITE-3695, https://issues.apache.org/jira/browse/CALCITE-3707";>CALCITE-3707)
+
+We have also fixed some important bugs:
+* The metadata cache is fixed for rare cases that `RelSet`s are merging (https://issues.apache.org/jira/browse/CALCITE-2018";>CALCITE-2018)
+* The `GROUP_ID` now returns correct results (https://issues.apache.org/jira/browse/CALCITE-1824";>CALCITE-1824)
+* `CORRELATE` row count estimation has been fixed, it is always 1 before (https://issues.apache.org/jira/browse/CALCITE-3711";>CALCITE-3711)
+* The modulus precision inference of `DECIMAL`s has been fixed (https://issues.apache.org/jira/browse/CALCITE-3435";>CALCITE-3435)
diff --git a/site/downloads/index.md b/site/downloads/index.md
index 394eb89..d75fc7e 100644
--- a/site/downloads/index.md
+++ b/site/downloads/index.md
@@ -50,7 +50,10 @@ Release  | Date   | Commit   | Download
 {% endcomment %}{% capture d1 %}{{ post.date | date: "%F"}}{% endcapture %}{% 
comment %}
 {% endcomment %}{% capture d2 %}2017-08-31{% endcapture %}{% comment %}
 {% endcomment %}{% capture d3 %}2018-06-01{% endcapture %}{% comment %}
-{% endcomment %}{% if d1 > d2 %}{% comment %}
+{% endcomment %}{% capture d4 %}2020-03-01{% endcapture %}{% comment %}
+{% endcomment %}{% if d1 > d4 %}{% comment %}
+{% endcomment %}{% assign digest = "sha512" %}{% comment %}
+{% endcomment %}{% else if d1 > d2 %}{% comment %}
 {% endcomment %}{% assign digest = "sha256" %}{% comment %}
 {% endcomment %}{% else %}{% comment %}
 {% endcomment %}{% assign digest = "md5" %}{% comment %}



[GitHub] [calcite] liyafan82 commented on issue #1839: [CALCITE-3836] The hash codes of RelNodes are unreliable

2020-03-05 Thread GitBox
liyafan82 commented on issue #1839: [CALCITE-3836] The hash codes of RelNodes 
are unreliable
URL: https://github.com/apache/calcite/pull/1839#issuecomment-595131405
 
 
   > > liyafan82: So the hash code of an object may change
   > > Vladimir: This is false
   > > liyafan82: Would you please give some docs/link/code proving this?
   > 
   > @liyafan82 , would you please provide docs/link/code instead?
   > 
   > Here's the javadoc for 
[Object#hashCode](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--)
   > 
   > > Whenever it is invoked on the same object more than once during an 
execution of a Java application, the hashCode method **_must consistently 
return the same integer_**
   > 
   > > liyafan82: So the hash code of an object may change
   > 
   > Can you please provide a justification or a reproducible case instead?
   > 
   > > liyafan82: Sorry. I do not understand why it violates the contract. 
Would you please elaborate more on this?
   > 
   > Please check the javadoc for `Object#hashCode` and `#equals`. Please study 
https://jqno.nl/equalsverifier/ as well.
   
   @vlsi Thanks a lot for your feedback. I am aware of the JavaDocs. I am just 
a little concerned about the implementation details. According to the discussio 
in the JIRA, I think I am convinced that the hashCode should not change. 
   
   The tool you recommended is cool. Thank you.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [calcite] vlsi edited a comment on issue #1839: [CALCITE-3836] The hash codes of RelNodes are unreliable

2020-03-05 Thread GitBox
vlsi edited a comment on issue #1839: [CALCITE-3836] The hash codes of RelNodes 
are unreliable
URL: https://github.com/apache/calcite/pull/1839#issuecomment-595117753
 
 
   > liyafan82: So the hash code of an object may change
   > Vladimir: This is false
   > liyafan82: Would you please give some docs/link/code proving this?
   
   @liyafan82 , would you please provide docs/link/code instead?
   
   Here's the javadoc for 
[Object#hashCode](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--)
   
   >Whenever it is invoked on the same object more than once during an 
execution of a Java application, the hashCode method **_must consistently 
return the same integer_**
   
   It is sad your statement contradicts the very basic javadoc for 
`Object#hashCode`, and you ask others to prove something.
   It is you who should provide enough evidence to justify the bug exists.
   
   ---
   
   > liyafan82: So the hash code of an object may change
   
   Can you please provide a justification or a reproducible case instead?
   
   > liyafan82: Sorry. I do not understand why it violates the contract. Would 
you please elaborate more on this?
   
   Please check the javadoc for `Object#hashCode` and `#equals`. Please study 
https://jqno.nl/equalsverifier/ as well.
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[calcite] 01/01: Add 1.22.0 release announcement

2020-03-05 Thread danny0405
This is an automated email from the ASF dual-hosted git repository.

danny0405 pushed a commit to branch branch-1.22
in repository https://gitbox.apache.org/repos/asf/calcite.git

commit 20c9b73349bb6a62e279cd443a5c444957dc6b0a
Author: yuzhao.cyz 
AuthorDate: Thu Mar 5 16:34:18 2020 +0800

Add 1.22.0 release announcement
---
 site/_posts/2020-03-05-release-1.22.0.md | 43 
 1 file changed, 43 insertions(+)

diff --git a/site/_posts/2020-03-05-release-1.22.0.md 
b/site/_posts/2020-03-05-release-1.22.0.md
new file mode 100644
index 000..daa181a
--- /dev/null
+++ b/site/_posts/2020-03-05-release-1.22.0.md
@@ -0,0 +1,43 @@
+---
+layout: news_item
+date: "2020-03-05 17:17:00 +0800"
+author: danny0405
+version: 1.22.0
+categories: [release]
+tag: rel/v1.22.0
+sha: 537b8dbb4b58c61b6c573eb07a51b8d38896a1ff
+---
+
+
+The [Apache Calcite PMC]({{ site.baseurl }})
+is pleased to announce
+[Apache Calcite release 1.22.0]({{ site.baseurl }}/docs/history.html#v1-22-0).
+
+This release comes five months after 1.21.0. It includes more than 250 
resolved issues, comprising a large number of new features as well as general 
improvements and bug-fixes. Among others, it is worth highlighting the 
following.
+
+* Supports SQL hints for different kind of relational expressions (https://issues.apache.org/jira/browse/CALCITE-482";>CALCITE-482)
+* A new Redis adaptor (https://issues.apache.org/jira/browse/CALCITE-3510";>CALCITE-3510)
+* More Oracle and MySQL functions are supported, i.e. Oracle `XML` function 
(https://issues.apache.org/jira/browse/CALCITE-3579";>CALCITE-3579, 
https://issues.apache.org/jira/browse/CALCITE-3580";>CALCITE-3580), 
MySQL math functions (https://issues.apache.org/jira/browse/CALCITE-3684";>CALCITE-3684, https://issues.apache.org/jira/browse/CALCITE-3695";>CALCITE-3695, https://issues.apache.org/jira/browse/CALCITE-3707";>CALCITE-3707)
+
+We have also fixed some important bugs:
+* The metadata cache is fixed for rare cases that `RelSet`s are merging (https://issues.apache.org/jira/browse/CALCITE-2018";>CALCITE-2018)
+* The `GROUP_ID` now returns correct results (https://issues.apache.org/jira/browse/CALCITE-1824";>CALCITE-1824)
+* `CORRELATE` row count estimation has been fixed, it is always 1 before (https://issues.apache.org/jira/browse/CALCITE-3711";>CALCITE-3711)
+* The modulus precision inference of `DECIMAL`s has been fixed (https://issues.apache.org/jira/browse/CALCITE-3435";>CALCITE-3435)



[calcite] branch branch-1.22 updated (d88b5a7 -> 20c9b73)

2020-03-05 Thread danny0405
This is an automated email from the ASF dual-hosted git repository.

danny0405 pushed a change to branch branch-1.22
in repository https://gitbox.apache.org/repos/asf/calcite.git.


 discard d88b5a7  Add 1.22.0 release announcement
 new 20c9b73  Add 1.22.0 release announcement

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (d88b5a7)
\
 N -- N -- N   refs/heads/branch-1.22 (20c9b73)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 site/_posts/2020-03-05-release-1.22.0.md | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)



[GitHub] [calcite] vlsi commented on issue #1839: [CALCITE-3836] The hash codes of RelNodes are unreliable

2020-03-05 Thread GitBox
vlsi commented on issue #1839: [CALCITE-3836] The hash codes of RelNodes are 
unreliable
URL: https://github.com/apache/calcite/pull/1839#issuecomment-595117753
 
 
   > liyafan82: So the hash code of an object may change
   > Vladimir: This is false
   > liyafan82: Would you please give some docs/link/code proving this?
   
   @liyafan82 , would you please provide docs/link/code instead?
   
   Here's the javadoc for 
[Object#hashCode](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--)
   
   >Whenever it is invoked on the same object more than once during an 
execution of a Java application, the hashCode method **_must consistently 
return the same integer_**
   
   
   > liyafan82: So the hash code of an object may change
   
   Can you please provide a justification or a reproducible case instead?
   
   > liyafan82: Sorry. I do not understand why it violates the contract. Would 
you please elaborate more on this?
   
   Please check the javadoc for `Object#hashCode` and `#equals`. Please study 
https://jqno.nl/equalsverifier/ as well.
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[calcite] 01/01: Add 1.22.0 release announcement

2020-03-05 Thread danny0405
This is an automated email from the ASF dual-hosted git repository.

danny0405 pushed a commit to branch branch-1.22
in repository https://gitbox.apache.org/repos/asf/calcite.git

commit d88b5a77624ac80e5f9477bb9edfcad285b19e75
Author: yuzhao.cyz 
AuthorDate: Thu Mar 5 16:34:18 2020 +0800

Add 1.22.0 release announcement
---
 site/_posts/2020-03-05-release-1.22.0.md | 43 
 1 file changed, 43 insertions(+)

diff --git a/site/_posts/2020-03-05-release-1.22.0.md 
b/site/_posts/2020-03-05-release-1.22.0.md
new file mode 100644
index 000..bcd65e7
--- /dev/null
+++ b/site/_posts/2020-03-05-release-1.22.0.md
@@ -0,0 +1,43 @@
+---
+layout: news_item
+date: "2019-09-11 21:40:00 +"
+author: zabetak
+version: 1.21.0
+categories: [release]
+tag: v1-21-0
+sha: adc1532de853060d24fd0129257a3fae306fb55c
+---
+
+
+The [Apache Calcite PMC]({{ site.baseurl }})
+is pleased to announce
+[Apache Calcite release 1.22.0]({{ site.baseurl }}/docs/history.html#v1-22-0).
+
+This release comes five months after 1.21.0. It includes more than 250 
resolved issues, comprising a large number of new features as well as general 
improvements and bug-fixes. Among others, it is worth highlighting the 
following.
+
+* Supports SQL hints for different kind of relational expressions (https://issues.apache.org/jira/browse/CALCITE-482";>CALCITE-482)
+* A new Redis adaptor (https://issues.apache.org/jira/browse/CALCITE-3510";>CALCITE-3510)
+* More Oracle and MySQL functions are supported, i.e. Oracle `XML` function 
(https://issues.apache.org/jira/browse/CALCITE-3579";>CALCITE-3579, 
https://issues.apache.org/jira/browse/CALCITE-3580";>CALCITE-3580), 
MySQL math functions (https://issues.apache.org/jira/browse/CALCITE-3684";>CALCITE-3684, https://issues.apache.org/jira/browse/CALCITE-3695";>CALCITE-3695, https://issues.apache.org/jira/browse/CALCITE-3707";>CALCITE-3707)
+
+We have also fixed some important bugs:
+* The metadata cache is fixed for rare cases that `RelSet`s are merging (https://issues.apache.org/jira/browse/CALCITE-2018";>CALCITE-2018)
+* The `GROUP_ID` now returns correct results (https://issues.apache.org/jira/browse/CALCITE-1824";>CALCITE-1824)
+* `CORRELATE` row count estimation has been fixed, it is always 1 before (https://issues.apache.org/jira/browse/CALCITE-3711";>CALCITE-3711)
+* The modulus precision inference of `DECIMAL`s has been fixed (https://issues.apache.org/jira/browse/CALCITE-3435";>CALCITE-3435)



[calcite] branch branch-1.22 updated (213904c -> d88b5a7)

2020-03-05 Thread danny0405
This is an automated email from the ASF dual-hosted git repository.

danny0405 pushed a change to branch branch-1.22
in repository https://gitbox.apache.org/repos/asf/calcite.git.


from 213904c  Improve 1.22.0 release note and document
 add ed1470a  Prepare for next development iteration
 new d88b5a7  Add 1.22.0 release announcement

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 gradle.properties|  2 +-
 site/_posts/2020-03-05-release-1.22.0.md | 43 
 2 files changed, 44 insertions(+), 1 deletion(-)
 create mode 100644 site/_posts/2020-03-05-release-1.22.0.md