You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "xiaojin.wy (Jira)" <ji...@apache.org> on 2020/01/19 06:54:00 UTC

[jira] [Updated] (FLINK-15658) The same sql run in a streaming environment producing a Exception, but a batch env can run normally.

     [ https://issues.apache.org/jira/browse/FLINK-15658?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

xiaojin.wy updated FLINK-15658:
-------------------------------
    Description: 
*summary:
*
The same sql can run in a batch environment normally,  but in a streaming environment there will be a exception like this:
[ERROR] Could not execute SQL statement. Reason:
org.apache.flink.table.api.ValidationException: Field names must be unique. Found duplicates: [f1]





*The sql is:*

CREATE TABLE `tenk1` (
	unique1 int,
	unique2 int,
	two int,
	four int,
	ten int,
	twenty int,
	hundred int,
	thousand int,
	twothousand int,
	fivethous int,
	tenthous int,
	odd int,
	even int,
	stringu1 varchar,
	stringu2 varchar,
	string4 varchar
) WITH (
	'connector.path'='/daily_regression_test_stream_postgres_1.10/test_join/sources/tenk1.csv',
	'format.empty-column-as-null'='true',
	'format.field-delimiter'='|',
	'connector.type'='filesystem',
	'format.derive-schema'='true',
	'format.type'='csv'
);

CREATE TABLE `int4_tbl` (
	f1 INT
) WITH (
	'connector.path'='/daily_regression_test_stream_postgres_1.10/test_join/sources/int4_tbl.csv',
	'format.empty-column-as-null'='true',
	'format.field-delimiter'='|',
	'connector.type'='filesystem',
	'format.derive-schema'='true',
	'format.type'='csv'
);

select a.f1, b.f1, t.thousand, t.tenthous from
  tenk1 t,
  (select sum(f1)+1 as f1 from int4_tbl i4a) a,
  (select sum(f1) as f1 from int4_tbl i4b) b
where b.f1 = t.thousand and a.f1 = b.f1 and (a.f1+b.f1+999) = t.tenthous;







  was:
The same sql can run in a batch environment normally,  but in a streaming environment there will be a exception like this:
[ERROR] Could not execute SQL statement. Reason:
org.apache.flink.table.api.ValidationException: Field names must be unique. Found duplicates: [f1]





*The sql is:*

CREATE TABLE `tenk1` (
	unique1 int,
	unique2 int,
	two int,
	four int,
	ten int,
	twenty int,
	hundred int,
	thousand int,
	twothousand int,
	fivethous int,
	tenthous int,
	odd int,
	even int,
	stringu1 varchar,
	stringu2 varchar,
	string4 varchar
) WITH (
	'connector.path'='/daily_regression_test_stream_postgres_1.10/test_join/sources/tenk1.csv',
	'format.empty-column-as-null'='true',
	'format.field-delimiter'='|',
	'connector.type'='filesystem',
	'format.derive-schema'='true',
	'format.type'='csv'
);

CREATE TABLE `int4_tbl` (
	f1 INT
) WITH (
	'connector.path'='/daily_regression_test_stream_postgres_1.10/test_join/sources/int4_tbl.csv',
	'format.empty-column-as-null'='true',
	'format.field-delimiter'='|',
	'connector.type'='filesystem',
	'format.derive-schema'='true',
	'format.type'='csv'
);

select a.f1, b.f1, t.thousand, t.tenthous from
  tenk1 t,
  (select sum(f1)+1 as f1 from int4_tbl i4a) a,
  (select sum(f1) as f1 from int4_tbl i4b) b
where b.f1 = t.thousand and a.f1 = b.f1 and (a.f1+b.f1+999) = t.tenthous;








> The same sql run in a streaming environment producing a Exception, but a batch env can run normally.
> ----------------------------------------------------------------------------------------------------
>
>                 Key: FLINK-15658
>                 URL: https://issues.apache.org/jira/browse/FLINK-15658
>             Project: Flink
>          Issue Type: Bug
>          Components: Table SQL / Client
>    Affects Versions: 1.10.0
>         Environment: *Input data:
> *
> tenk1 is:
> 4773|9990|1|1|3|13|73|773|773|4773|4773|146|147|PBAAAA|GUOAAA|OOOOxx
> 4093|9991|1|1|3|13|93|93|93|4093|4093|186|187|LBAAAA|HUOAAA|VVVVxx
> 6587|9992|1|3|7|7|87|587|587|1587|6587|174|175|JTAAAA|IUOAAA|AAAAxx
> 6093|9993|1|1|3|13|93|93|93|1093|6093|186|187|JAAAAA|JUOAAA|HHHHxx
> 429|9994|1|1|9|9|29|429|429|429|429|58|59|NQAAAA|KUOAAA|OOOOxx
> 5780|9995|0|0|0|0|80|780|1780|780|5780|160|161|IOAAAA|LUOAAA|VVVVxx
> 1783|9996|1|3|3|3|83|783|1783|1783|1783|166|167|PQAAAA|MUOAAA|AAAAxx
> 2992|9997|0|0|2|12|92|992|992|2992|2992|184|185|CLAAAA|NUOAAA|HHHHxx
> 0|9998|0|0|0|0|0|0|0|0|0|0|1|AAAAAA|OUOAAA|OOOOxx
> 2968|9999|0|0|8|8|68|968|968|2968|2968|136|137|EKAAAA|PUOAAA|VVVVxx
> int4_tbl is:
> 0
> 123456
> -123456
> 2147483647
> -2147483647
> *The sql-client configuration is :
> *
> execution:
>   planner: blink
>   type: batch
>            Reporter: xiaojin.wy
>            Priority: Major
>             Fix For: 1.10.0
>
>
> *summary:
> *
> The same sql can run in a batch environment normally,  but in a streaming environment there will be a exception like this:
> [ERROR] Could not execute SQL statement. Reason:
> org.apache.flink.table.api.ValidationException: Field names must be unique. Found duplicates: [f1]
> *The sql is:*
> CREATE TABLE `tenk1` (
> 	unique1 int,
> 	unique2 int,
> 	two int,
> 	four int,
> 	ten int,
> 	twenty int,
> 	hundred int,
> 	thousand int,
> 	twothousand int,
> 	fivethous int,
> 	tenthous int,
> 	odd int,
> 	even int,
> 	stringu1 varchar,
> 	stringu2 varchar,
> 	string4 varchar
> ) WITH (
> 	'connector.path'='/daily_regression_test_stream_postgres_1.10/test_join/sources/tenk1.csv',
> 	'format.empty-column-as-null'='true',
> 	'format.field-delimiter'='|',
> 	'connector.type'='filesystem',
> 	'format.derive-schema'='true',
> 	'format.type'='csv'
> );
> CREATE TABLE `int4_tbl` (
> 	f1 INT
> ) WITH (
> 	'connector.path'='/daily_regression_test_stream_postgres_1.10/test_join/sources/int4_tbl.csv',
> 	'format.empty-column-as-null'='true',
> 	'format.field-delimiter'='|',
> 	'connector.type'='filesystem',
> 	'format.derive-schema'='true',
> 	'format.type'='csv'
> );
> select a.f1, b.f1, t.thousand, t.tenthous from
>   tenk1 t,
>   (select sum(f1)+1 as f1 from int4_tbl i4a) a,
>   (select sum(f1) as f1 from int4_tbl i4b) b
> where b.f1 = t.thousand and a.f1 = b.f1 and (a.f1+b.f1+999) = t.tenthous;



--
This message was sent by Atlassian Jira
(v8.3.4#803005)