[jira] [Comment Edited] (FLINK-31091) SQL interval related queries stop working via SQL client
[ https://issues.apache.org/jira/browse/FLINK-31091?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17691352#comment-17691352 ] Jane Chan edited comment on FLINK-31091 at 2/21/23 3:31 AM: Thanks, [~Sergey Nuyanzin] and [~mapohl] for reporting this. The reason is that org.apache.flink.table.gateway.rest.serde.LogicalTypeJsonSerializer does not cope with `INTERVAL_YEAR_MONTH` and `INTERVAL_DAY_TIME`. cc [~fsk119] was (Author: qingyue): Thanks, [~Sergey Nuyanzin] and [~mapohl] for reporting this. The reason is that org.apache.flink.table.gateway.rest.serde.LogicalTypeJsonSerializer does not cope with `INTERVAL_YEAR_MONTH` and `INTERVAL_DAY_TIME`. I'd like to fix this issue. cc [~fsk119] > SQL interval related queries stop working via SQL client > > > Key: FLINK-31091 > URL: https://issues.apache.org/jira/browse/FLINK-31091 > Project: Flink > Issue Type: Bug > Components: Table SQL / Client >Affects Versions: 1.17.0 >Reporter: Sergey Nuyanzin >Assignee: Sergey Nuyanzin >Priority: Blocker > Labels: pull-request-available > > I put blocker since it works in 1.16.x and stopped working in 1.17 after a > certain commit > Any interval related query run via SQL Client is failing with > {noformat} > [ERROR] Could not execute SQL statement. Reason: > org.apache.flink.runtime.rest.util.RestClientException: [Internal server > error. Could not map response to JSON.] > at > org.apache.flink.runtime.rest.RestClient.parseResponse(RestClient.java:536) > at > org.apache.flink.runtime.rest.RestClient.lambda$submitRequest$3(RestClient.java:516) > at > java.util.concurrent.CompletableFuture.uniCompose(CompletableFuture.java:966) > at > java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:940) > at > java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:456) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:750) > {noformat} > example of query > {code:sql} > SELECT INTERVAL '2' DAY; > SELECT 1, INTERVAL '2' YEAR; > {code} > based on tests it stopped working after this commit > https://issues.apache.org/jira/browse/FLINK-29945 > More traces from logs > {noformat} > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonMappingException: > Unable to serialize logical type 'INTERVAL MONTH NOT NULL'. Please check the > documentation for supported types. (through reference chain: java.util.Coll > ections$UnmodifiableRandomAccessList[1]->org.apache.flink.table.gateway.rest.serde.ColumnInfo["logicalType"]) > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:392) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:351) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.std.StdSerializer.wrapAndThrow(StdSerializer.java:316) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:782) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:178) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.impl.IndexedListSerializer.serializeContents(IndexedListSerializer.java:119) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.impl.IndexedListSerializer.serialize(IndexedListSerializer.java:79) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.impl.IndexedListSerializer.serialize(IndexedListSerializer.java:18) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.SerializerProvider.defaultSerializeField(SerializerProvider.java:1166) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.table.gateway.rest.serde.ResultInfoSerializer.serialize(ResultInfoSerializer.java:82) > ~[flink-sql-gateway-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at >
[jira] [Comment Edited] (FLINK-31091) SQL interval related queries stop working via SQL client
[ https://issues.apache.org/jira/browse/FLINK-31091?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17691190#comment-17691190 ] Matthias Pohl edited comment on FLINK-31091 at 2/20/23 2:00 PM: [~fsk119] [~lic] [~qingyue] (I selected you based on a proposal from [~Leonard]) do you have any insights here? was (Author: mapohl): [~fsk119] [~lic] [~qingyue] do you have any insights here? > SQL interval related queries stop working via SQL client > > > Key: FLINK-31091 > URL: https://issues.apache.org/jira/browse/FLINK-31091 > Project: Flink > Issue Type: Bug > Components: Table SQL / Client >Affects Versions: 1.17.0 >Reporter: Sergey Nuyanzin >Assignee: Sergey Nuyanzin >Priority: Blocker > Labels: pull-request-available > > I put blocker since it works in 1.16.x and stopped working in 1.17 after a > certain commit > Any interval related query run via SQL Client is failing with > {noformat} > [ERROR] Could not execute SQL statement. Reason: > org.apache.flink.runtime.rest.util.RestClientException: [Internal server > error. Could not map response to JSON.] > at > org.apache.flink.runtime.rest.RestClient.parseResponse(RestClient.java:536) > at > org.apache.flink.runtime.rest.RestClient.lambda$submitRequest$3(RestClient.java:516) > at > java.util.concurrent.CompletableFuture.uniCompose(CompletableFuture.java:966) > at > java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:940) > at > java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:456) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:750) > {noformat} > example of query > {code:sql} > SELECT INTERVAL '2' DAY; > SELECT 1, INTERVAL '2' YEAR; > {code} > based on tests it stopped working after this commit > https://issues.apache.org/jira/browse/FLINK-29945 > More traces from logs > {noformat} > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonMappingException: > Unable to serialize logical type 'INTERVAL MONTH NOT NULL'. Please check the > documentation for supported types. (through reference chain: java.util.Coll > ections$UnmodifiableRandomAccessList[1]->org.apache.flink.table.gateway.rest.serde.ColumnInfo["logicalType"]) > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:392) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:351) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.std.StdSerializer.wrapAndThrow(StdSerializer.java:316) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:782) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:178) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.impl.IndexedListSerializer.serializeContents(IndexedListSerializer.java:119) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.impl.IndexedListSerializer.serialize(IndexedListSerializer.java:79) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.impl.IndexedListSerializer.serialize(IndexedListSerializer.java:18) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.SerializerProvider.defaultSerializeField(SerializerProvider.java:1166) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.table.gateway.rest.serde.ResultInfoSerializer.serialize(ResultInfoSerializer.java:82) > ~[flink-sql-gateway-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.table.gateway.rest.serde.ResultInfoSerializer.serialize(ResultInfoSerializer.java:47) > ~[flink-sql-gateway-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] > at > org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.SerializerProvider.defaultSerializeField(SerializerProvider.java:1166) > ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] >