Sergey Nuyanzin created FLINK-30826:
---------------------------------------
Summary: HashAggITCase.testLeadLag is failing with jdk 11
Key: FLINK-30826
URL: https://issues.apache.org/jira/browse/FLINK-30826
Project: Flink
Issue Type: Bug
Components: Table SQL / Planner
Affects Versions: 1.17.0
Reporter: Sergey Nuyanzin
With jdk8 it is green.
At the same time it is constantly failing for jdk11 like
{noformat}
[ERROR]
org.apache.flink.table.planner.runtime.batch.sql.agg.HashAggITCase.testLeadLag
Time elapsed: 0.336 s <<< FAILURE!
java.lang.AssertionError:
Results do not match for query:
SELECT
a,
b, LEAD(b, 1) over (order by a) AS bLead, LAG(b, 1) over (order by a) AS
bLag,
c, LEAD(c, 1) over (order by a) AS cLead, LAG(c, 1) over (order by a) AS
cLag,
d, LEAD(d, 1) over (order by a) AS dLead, LAG(d, 1) over (order by a) AS
dLag,
e, LEAD(e, 1) over (order by a) AS eLead, LAG(e, 1) over (order by a) AS
eLag,
f, LEAD(f, 1) over (order by a) AS fLead, LAG(f, 1) over (order by a) AS
fLag,
g, LEAD(g, 1) over (order by a) AS gLead, LAG(g, 1) over (order by a) AS
gLag,
h, LEAD(h, 1) over (order by a) AS hLead, LAG(h, 1) over (order by a) AS
hLag,
i, LEAD(i, 1) over (order by a) AS iLead, LAG(i, 1) over (order by a) AS
iLag,
j, LEAD(j, 1) over (order by a) AS jLead, LAG(j, 1) over (order by a) AS
jLag,
k, LEAD(k, 1) over (order by a) AS kLead, LAG(k, 1) over (order by a) AS
kLag,
l, LEAD(l, 1) over (order by a) AS lLead, LAG(l, 1) over (order by a) AS
lLag,
m, LEAD(m, 1) over (order by a) AS mLead, LAG(m, 1) over (order by a) AS
mLag,
n, LEAD(n, 1) over (order by a) AS nLead, LAG(n, 1) over (order by a) AS
nLag
FROM UnnamedTable$18
order by a
Results
== Correct Result - 3 ==
==
Actual Result - 3 ==
!+I[Alice, 1, 1, null, 1, 1, null, 2, 2, null, 9223, 9223, null, -2.3, -2.3,
null, 9.9, 9.9, null, true, true, null, varchar, varchar, null, char
, char , null, 2021-08-03, 2021-08-03, null, 20:08:17,
20:08:17, null, 2021-08-03T20:08:29, 2021-08-03T20:08:29, null, 9.99, 9.99,
null] +I[Alice, 1, null, null, 1, null, null, 2, null, null, 9223, null,
null, -2.3, null, null, 9.9, null, null, true, null, null, varchar, null, null,
char , null, null, 2021-08-03, null, null, 20:08:17, null, null,
2021-08-03T20:08:29, null, null, 9.99, null, null]
!+I[Alice, 1, null, 1, 1, null, 1, 2, null, 2, 9223, null, 9223, -2.3, null,
-2.3, 9.9, null, 9.9, true, null, true, varchar, null, varchar, char
, null, char , 2021-08-03, null, 2021-08-03, 20:08:17, null,
20:08:17, 2021-08-03T20:08:29, null, 2021-08-03T20:08:29, 9.99, null, 9.99]
+I[Alice, 1, null, null, 1, null, null, 2, null, null, 9223, null, null, -2.3,
null, null, 9.9, null, null, true, null, null, varchar, null, null, char
, null, null, 2021-08-03, null, null, 20:08:17, null, null,
2021-08-03T20:08:29, null, null, 9.99, null, null]
!+I[Alice, null, null, 1, null, null, 1, null, null, 2, null, null, 9223, null,
null, -2.3, null, null, 9.9, null, null, true, null, null, varchar, null, null,
char , null, null, 2021-08-03, null, null, 20:08:17, null, null,
2021-08-03T20:08:29, null, null, 9.99]
+I[Alice, null, 1, 1, null, 1, 1, null, 2, 2, null, 9223, 9223, null, -2.3,
-2.3, null, 9.9, 9.9, null, true, true, null, varchar, varchar, null, char
, char , null, 2021-08-03, 2021-08-03, null, 20:08:17,
20:08:17, null, 2021-08-03T20:08:29, 2021-08-03T20:08:29, null, 9.99, 9.99]
Plan:
== Abstract Syntax Tree ==
LogicalSort(sort0=[$0], dir0=[ASC-nulls-first])
+- LogicalProject(inputs=[0..1], exprs=[[LEAD($1, 1) OVER (ORDER BY $0 NULLS
FIRST), LAG($1, 1) OVER (ORDER BY $0 NULLS FIRST), $2, LEAD($2, 1) OVER (ORDER
BY $0 NULLS FIRST), LAG($2, 1) OVER (ORDER BY $0 NULLS FIRST), $3, LEAD($3, 1)
OVER (ORDER BY $0 NULLS FIRST), LAG($3, 1) OVER (ORDER BY $0 NULLS FIRST), $4,
LEAD($4, 1) OVER (ORDER BY $0 NULLS FIRST), LAG($4, 1) OVER (ORDER BY $0 NULLS
FIRST), $5, LEAD($5, 1) OVER (ORDER BY $0 NULLS FIRST), LAG($5, 1) OVER (ORDER
BY $0 NULLS FIRST), $6, LEAD($6, 1) OVER (ORDER BY $0 NULLS FIRST), LAG($6, 1)
OVER (ORDER BY $0 NULLS FIRST), $7, LEAD($7, 1) OVER (ORDER BY $0 NULLS FIRST),
LAG($7, 1) OVER (ORDER BY $0 NULLS FIRST), $8, LEAD($8, 1) OVER (ORDER BY $0
NULLS FIRST), LAG($8, 1) OVER (ORDER BY $0 NULLS FIRST), $9, LEAD($9, 1) OVER
(ORDER BY $0 NULLS FIRST), LAG($9, 1) OVER (ORDER BY $0 NULLS FIRST), $10,
LEAD($10, 1) OVER (ORDER BY $0 NULLS FIRST), LAG($10, 1) OVER (ORDER BY $0
NULLS FIRST), $11, LEAD($11, 1) OVER (ORDER BY $0 NULLS FIRST), LAG($11, 1)
OVER (ORDER BY $0 NULLS FIRST), $12, LEAD($12, 1) OVER (ORDER BY $0 NULLS
FIRST), LAG($12, 1) OVER (ORDER BY $0 NULLS FIRST), $13, LEAD($13, 1) OVER
(ORDER BY $0 NULLS FIRST), LAG($13, 1) OVER (ORDER BY $0 NULLS FIRST)]])
+- LogicalUnion(all=[true])
:- LogicalProject(exprs=[[CAST(_UTF-16LE'Alice':VARCHAR(2147483647)
CHARACTER SET "UTF-16LE"):VARCHAR(2147483647) CHARACTER SET "UTF-16LE",
CAST(1:TINYINT):TINYINT, CAST(1:SMALLINT):SMALLINT, CAST(2):INTEGER,
CAST(9223:BIGINT):BIGINT, CAST(-2.3E0:FLOAT):FLOAT, CAST(9.9E0:DOUBLE):DOUBLE,
CAST(true):BOOLEAN, CAST(_UTF-16LE'varchar':VARCHAR(20) CHARACTER SET
"UTF-16LE"):VARCHAR(20) CHARACTER SET "UTF-16LE", CAST(_UTF-16LE'char
'):CHAR(20) CHARACTER SET "UTF-16LE", CAST(2021-08-03):DATE,
CAST(20:08:17):TIME(0), CAST(2021-08-03 20:08:29:TIMESTAMP(6)):TIMESTAMP(6),
CAST(9.99E0:DECIMAL(3, 2)):DECIMAL(3, 2)]])
: +- LogicalValues(type=[RecordType(INTEGER ZERO)], tuples=[[{ 0 }]])
:- LogicalProject(exprs=[[CAST(_UTF-16LE'Alice':VARCHAR(2147483647)
CHARACTER SET "UTF-16LE"):VARCHAR(2147483647) CHARACTER SET "UTF-16LE",
null:TINYINT, null:SMALLINT, null:INTEGER, null:BIGINT, null:FLOAT,
null:DOUBLE, null:BOOLEAN, null:VARCHAR(20) CHARACTER SET "UTF-16LE",
null:CHAR(20) CHARACTER SET "UTF-16LE", null:DATE, null:TIME(0),
null:TIMESTAMP(6), null:DECIMAL(3, 2)]])
: +- LogicalValues(type=[RecordType(INTEGER ZERO)], tuples=[[{ 0 }]])
+- LogicalProject(exprs=[[CAST(_UTF-16LE'Alice':VARCHAR(2147483647)
CHARACTER SET "UTF-16LE"):VARCHAR(2147483647) CHARACTER SET "UTF-16LE",
CAST(1:TINYINT):TINYINT, CAST(1:SMALLINT):SMALLINT, CAST(2):INTEGER,
CAST(9223:BIGINT):BIGINT, CAST(-2.3E0:FLOAT):FLOAT, CAST(9.9E0:DOUBLE):DOUBLE,
CAST(true):BOOLEAN, CAST(_UTF-16LE'varchar':VARCHAR(20) CHARACTER SET
"UTF-16LE"):VARCHAR(20) CHARACTER SET "UTF-16LE", CAST(_UTF-16LE'char
'):CHAR(20) CHARACTER SET "UTF-16LE", CAST(2021-08-03):DATE,
CAST(20:08:17):TIME(0), CAST(2021-08-03 20:08:29:TIMESTAMP(6)):TIMESTAMP(6),
CAST(9.99E0:DECIMAL(3, 2)):DECIMAL(3, 2)]])
+- LogicalValues(type=[RecordType(INTEGER ZERO)], tuples=[[{ 0 }]])
== Optimized Logical Plan ==
Sort(orderBy=[a ASC])
+- Calc(select=[a, b, w0$o0 AS bLead, w0$o1 AS bLag, c, w0$o2 AS cLead, w0$o3
AS cLag, d, w0$o4 AS dLead, w0$o5 AS dLag, e, w0$o6 AS eLead, w0$o7 AS eLag, f,
w0$o8 AS fLead, w0$o9 AS fLag, g, w0$o10 AS gLead, w0$o11 AS gLag, h, w0$o12 AS
hLead, w0$o13 AS hLag, i, w0$o14 AS iLead, w0$o15 AS iLag, j, w0$o16 AS jLead,
w0$o17 AS jLag, k, w0$o18 AS kLead, w0$o19 AS kLag, l, w0$o20 AS lLead, w0$o21
AS lLag, m, w0$o22 AS mLead, w0$o23 AS mLag, n, w0$o24 AS nLead, w0$o25 AS
nLag])
+- OverAggregate(orderBy=[a ASC], window#0=[LEAD(b, 1) AS w0$o0, LAG(b, 1)
AS w0$o1, LEAD(c, 1) AS w0$o2, LAG(c, 1) AS w0$o3, LEAD(d, 1) AS w0$o4, LAG(d,
1) AS w0$o5, LEAD(e, 1) AS w0$o6, LAG(e, 1) AS w0$o7, LEAD(f, 1) AS w0$o8,
LAG(f, 1) AS w0$o9, LEAD(g, 1) AS w0$o10, LAG(g, 1) AS w0$o11, LEAD(h, 1) AS
w0$o12, LAG(h, 1) AS w0$o13, LEAD(i, 1) AS w0$o14, LAG(i, 1) AS w0$o15, LEAD(j,
1) AS w0$o16, LAG(j, 1) AS w0$o17, LEAD(k, 1) AS w0$o18, LAG(k, 1) AS w0$o19,
LEAD(l, 1) AS w0$o20, LAG(l, 1) AS w0$o21, LEAD(m, 1) AS w0$o22, LAG(m, 1) AS
w0$o23, LEAD(n, 1) AS w0$o24, LAG(n, 1) AS w0$o25 RANG BETWEEN UNBOUNDED
PRECEDING AND CURRENT ROW], select=[a, b, c, d, e, f, g, h, i, j, k, l, m, n,
w0$o0, w0$o1, w0$o2, w0$o3, w0$o4, w0$o5, w0$o6, w0$o7, w0$o8, w0$o9, w0$o10,
w0$o11, w0$o12, w0$o13, w0$o14, w0$o15, w0$o16, w0$o17, w0$o18, w0$o19, w0$o20,
w0$o21, w0$o22, w0$o23, w0$o24, w0$o25])
+- Sort(orderBy=[a ASC])
+- Exchange(distribution=[single])
+- Union(all=[true], union=[a, b, c, d, e, f, g, h, i, j, k, l, m,
n])
:- Calc(select=[CAST('Alice' AS VARCHAR(2147483647)) AS a,
CAST(1 AS TINYINT) AS b, CAST(1 AS SMALLINT) AS c, CAST(2 AS INTEGER) AS d,
CAST(9223 AS BIGINT) AS e, CAST(-2.3E0 AS FLOAT) AS f, CAST(9.9E0 AS DOUBLE) AS
g, CAST(true AS BOOLEAN) AS h, CAST('varchar' AS VARCHAR(20)) AS i, CAST('char
' AS CHAR(20)) AS j, CAST(2021-08-03 AS DATE) AS k, CAST(20:08:17
AS TIME(0)) AS l, CAST(2021-08-03 20:08:29 AS TIMESTAMP(6)) AS m, CAST(9.99E0
AS DECIMAL(3, 2)) AS n])
: +- Values(tuples=[[{ 0 }]], values=[ZERO])
:- Calc(select=[CAST('Alice' AS VARCHAR(2147483647)) AS a,
null:TINYINT AS b, null:SMALLINT AS c, null:INTEGER AS d, null:BIGINT AS e,
null:FLOAT AS f, null:DOUBLE AS g, null:BOOLEAN AS h, null:VARCHAR(20) AS i,
null:CHAR(20) AS j, null:DATE AS k, null:TIME(0) AS l, null:TIMESTAMP(6) AS m,
null:DECIMAL(3, 2) AS n])
: +- Values(tuples=[[{ 0 }]], values=[ZERO])
+- Calc(select=[CAST('Alice' AS VARCHAR(2147483647)) AS a,
CAST(1 AS TINYINT) AS b, CAST(1 AS SMALLINT) AS c, CAST(2 AS INTEGER) AS d,
CAST(9223 AS BIGINT) AS e, CAST(-2.3E0 AS FLOAT) AS f, CAST(9.9E0 AS DOUBLE) AS
g, CAST(true AS BOOLEAN) AS h, CAST('varchar' AS VARCHAR(20)) AS i, CAST('char
' AS CHAR(20)) AS j, CAST(2021-08-03 AS DATE) AS k, CAST(20:08:17
AS TIME(0)) AS l, CAST(2021-08-03 20:08:29 AS TIMESTAMP(6)) AS m, CAST(9.99E0
AS DECIMAL(3, 2)) AS n])
+- Values(tuples=[[{ 0 }]], values=[ZERO])
at org.junit.Assert.fail(Assert.java:89)
at
org.apache.flink.table.planner.runtime.utils.BatchTestBase.$anonfun$check$1(BatchTestBase.scala:152)
at
org.apache.flink.table.planner.runtime.utils.BatchTestBase.$anonfun$check$1$adapted(BatchTestBase.scala:145)
at scala.Option.foreach(Option.scala:257)
at
org.apache.flink.table.planner.runtime.utils.BatchTestBase.check(BatchTestBase.scala:145)
at
org.apache.flink.table.planner.runtime.utils.BatchTestBase.checkResult(BatchTestBase.scala:106)
at
org.apache.flink.table.planner.runtime.batch.sql.agg.AggregateITCaseBase.testLeadLag(AggregateITCaseBase.scala:958)
at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
at
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
at
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
at
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
at
org.apache.flink.util.TestNameProvider$1.evaluate(TestNameProvider.java:45)
at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:61)
at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
at
org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
at
org.junit.vintage.engine.execution.RunnerExecutor.execute(RunnerExecutor.java:42)
at
org.junit.vintage.engine.VintageTestEngine.executeAllChildren(VintageTestEngine.java:80)
at
org.junit.vintage.engine.VintageTestEngine.execute(VintageTestEngine.java:72)
at
org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:147)
at
org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:127)
at
org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:90)
at
org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:55)
at
org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:102)
at
org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:54)
at
org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)
at
org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86)
at
org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86)
at
org.junit.platform.launcher.core.SessionPerRequestLauncher.execute(SessionPerRequestLauncher.java:53)
at
org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.lambda$execute$1(JUnitPlatformProvider.java:199)
at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
at
org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:193)
at
org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:154)
at
org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:120)
at
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:428)
at
org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162)
at
org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:562)
at
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:548)
{noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)