[jira] [Updated] (PHOENIX-2930) Cannot resolve columns aliased to its own name
[ https://issues.apache.org/jira/browse/PHOENIX-2930?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Maryann Xue updated PHOENIX-2930: - Attachment: PHOENIX-2930.2.patch Came up with a slightly different patch. Instead of making up a new ColumnParseNode and test equality between the two nodes, it might be better to test if they can be resolved as the same column reference. I'll go ahead and commit it if this patch passes all tests. > Cannot resolve columns aliased to its own name > -- > > Key: PHOENIX-2930 > URL: https://issues.apache.org/jira/browse/PHOENIX-2930 > Project: Phoenix > Issue Type: Bug >Affects Versions: 4.4.0 >Reporter: Kevin Liew >Assignee: Ankit Singhal > Labels: alias > Fix For: 4.9.0 > > Attachments: PHOENIX-2930.2.patch, PHOENIX-2930.patch > > > Tableau generates queries that alias a fully-qualified column name to its > shortened name. > Similar to: > {code} > create table test (pk integer primary key); > select test.pk as pk from test group by pk; > {code} > Phoenix reports: > {code} > 8org.apache.calcite.avatica.proto.Responses$ErrorResponse¨ > ðjava.lang.RuntimeException: > org.apache.phoenix.schema.AmbiguousColumnException: ERROR 502 (42702): Column > reference ambiguous or duplicate names. columnName=PK > at org.apache.calcite.avatica.jdbc.JdbcMeta.propagate(JdbcMeta.java:671) > at org.apache.calcite.avatica.jdbc.JdbcMeta.prepare(JdbcMeta.java:695) > at > org.apache.calcite.avatica.remote.LocalService.apply(LocalService.java:208) > at > org.apache.calcite.avatica.remote.Service$PrepareRequest.accept(Service.java:1157) > at > org.apache.calcite.avatica.remote.Service$PrepareRequest.accept(Service.java:1131) > at > org.apache.calcite.avatica.remote.AbstractHandler.apply(AbstractHandler.java:95) > at > org.apache.calcite.avatica.remote.ProtobufHandler.apply(ProtobufHandler.java:46) > at > org.apache.calcite.avatica.server.AvaticaProtobufHandler.handle(AvaticaProtobufHandler.java:127) > at > org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52) > at > org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) > at org.eclipse.jetty.server.Server.handle(Server.java:499) > at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311) > at > org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) > at > org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544) > at > org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) > at > org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) > at java.lang.Thread.run(Thread.java:745) > Caused by: org.apache.phoenix.schema.AmbiguousColumnException: ERROR 502 > (42702): Column reference ambiguous or duplicate names. columnName=PK > at > org.apache.phoenix.parse.ParseNodeRewriter.visit(ParseNodeRewriter.java:406) > at > org.apache.phoenix.compile.StatementNormalizer.visit(StatementNormalizer.java:177) > at > org.apache.phoenix.compile.StatementNormalizer.visit(StatementNormalizer.java:58) > at > org.apache.phoenix.parse.ColumnParseNode.accept(ColumnParseNode.java:56) > at > org.apache.phoenix.parse.ParseNodeRewriter.rewrite(ParseNodeRewriter.java:111) > at > org.apache.phoenix.compile.StatementNormalizer.normalize(StatementNormalizer.java:107) > at > org.apache.phoenix.jdbc.PhoenixStatement$ExecutableSelectStatement.compilePlan(PhoenixStatement.java:398) > at > org.apache.phoenix.jdbc.PhoenixStatement$ExecutableSelectStatement.compilePlan(PhoenixStatement.java:378) > at > org.apache.phoenix.jdbc.PhoenixPreparedStatement.getMetaData(PhoenixPreparedStatement.java:223) > at org.apache.calcite.avatica.jdbc.JdbcMeta.prepare(JdbcMeta.java:689) > ... 15 more > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (PHOENIX-2930) Cannot resolve columns aliased to its own name
[ https://issues.apache.org/jira/browse/PHOENIX-2930?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ankit Singhal updated PHOENIX-2930: --- Attachment: PHOENIX-2930.patch [~jamestaylor], please review(not sure if this is the right way). > Cannot resolve columns aliased to its own name > -- > > Key: PHOENIX-2930 > URL: https://issues.apache.org/jira/browse/PHOENIX-2930 > Project: Phoenix > Issue Type: Bug >Affects Versions: 4.4.0 >Reporter: Kevin Liew >Assignee: Ankit Singhal > Labels: alias > Fix For: 4.9.0 > > Attachments: PHOENIX-2930.patch > > > Tableau generates queries that alias a fully-qualified column name to its > shortened name. > Similar to: > {code} > create table test (pk integer primary key); > select test.pk as pk from test group by pk; > {code} > Phoenix reports: > {code} > 8org.apache.calcite.avatica.proto.Responses$ErrorResponse¨ > ðjava.lang.RuntimeException: > org.apache.phoenix.schema.AmbiguousColumnException: ERROR 502 (42702): Column > reference ambiguous or duplicate names. columnName=PK > at org.apache.calcite.avatica.jdbc.JdbcMeta.propagate(JdbcMeta.java:671) > at org.apache.calcite.avatica.jdbc.JdbcMeta.prepare(JdbcMeta.java:695) > at > org.apache.calcite.avatica.remote.LocalService.apply(LocalService.java:208) > at > org.apache.calcite.avatica.remote.Service$PrepareRequest.accept(Service.java:1157) > at > org.apache.calcite.avatica.remote.Service$PrepareRequest.accept(Service.java:1131) > at > org.apache.calcite.avatica.remote.AbstractHandler.apply(AbstractHandler.java:95) > at > org.apache.calcite.avatica.remote.ProtobufHandler.apply(ProtobufHandler.java:46) > at > org.apache.calcite.avatica.server.AvaticaProtobufHandler.handle(AvaticaProtobufHandler.java:127) > at > org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52) > at > org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) > at org.eclipse.jetty.server.Server.handle(Server.java:499) > at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311) > at > org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) > at > org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544) > at > org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) > at > org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) > at java.lang.Thread.run(Thread.java:745) > Caused by: org.apache.phoenix.schema.AmbiguousColumnException: ERROR 502 > (42702): Column reference ambiguous or duplicate names. columnName=PK > at > org.apache.phoenix.parse.ParseNodeRewriter.visit(ParseNodeRewriter.java:406) > at > org.apache.phoenix.compile.StatementNormalizer.visit(StatementNormalizer.java:177) > at > org.apache.phoenix.compile.StatementNormalizer.visit(StatementNormalizer.java:58) > at > org.apache.phoenix.parse.ColumnParseNode.accept(ColumnParseNode.java:56) > at > org.apache.phoenix.parse.ParseNodeRewriter.rewrite(ParseNodeRewriter.java:111) > at > org.apache.phoenix.compile.StatementNormalizer.normalize(StatementNormalizer.java:107) > at > org.apache.phoenix.jdbc.PhoenixStatement$ExecutableSelectStatement.compilePlan(PhoenixStatement.java:398) > at > org.apache.phoenix.jdbc.PhoenixStatement$ExecutableSelectStatement.compilePlan(PhoenixStatement.java:378) > at > org.apache.phoenix.jdbc.PhoenixPreparedStatement.getMetaData(PhoenixPreparedStatement.java:223) > at org.apache.calcite.avatica.jdbc.JdbcMeta.prepare(JdbcMeta.java:689) > ... 15 more > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (PHOENIX-2930) Cannot resolve columns aliased to its own name
[ https://issues.apache.org/jira/browse/PHOENIX-2930?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] James Taylor updated PHOENIX-2930: -- Fix Version/s: 4.8.0 > Cannot resolve columns aliased to its own name > -- > > Key: PHOENIX-2930 > URL: https://issues.apache.org/jira/browse/PHOENIX-2930 > Project: Phoenix > Issue Type: Bug >Affects Versions: 4.4.0 >Reporter: Kevin Liew > Labels: alias > Fix For: 4.8.0 > > > Tableau generates queries that alias a fully-qualified column name to its > shortened name. > Similar to: > {code} > create table test (pk integer primary key); > select test.pk as pk from test group by pk; > {code} > Phoenix reports: > {code} > 8org.apache.calcite.avatica.proto.Responses$ErrorResponse¨ > ðjava.lang.RuntimeException: > org.apache.phoenix.schema.AmbiguousColumnException: ERROR 502 (42702): Column > reference ambiguous or duplicate names. columnName=PK > at org.apache.calcite.avatica.jdbc.JdbcMeta.propagate(JdbcMeta.java:671) > at org.apache.calcite.avatica.jdbc.JdbcMeta.prepare(JdbcMeta.java:695) > at > org.apache.calcite.avatica.remote.LocalService.apply(LocalService.java:208) > at > org.apache.calcite.avatica.remote.Service$PrepareRequest.accept(Service.java:1157) > at > org.apache.calcite.avatica.remote.Service$PrepareRequest.accept(Service.java:1131) > at > org.apache.calcite.avatica.remote.AbstractHandler.apply(AbstractHandler.java:95) > at > org.apache.calcite.avatica.remote.ProtobufHandler.apply(ProtobufHandler.java:46) > at > org.apache.calcite.avatica.server.AvaticaProtobufHandler.handle(AvaticaProtobufHandler.java:127) > at > org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52) > at > org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) > at org.eclipse.jetty.server.Server.handle(Server.java:499) > at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311) > at > org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) > at > org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544) > at > org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) > at > org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) > at java.lang.Thread.run(Thread.java:745) > Caused by: org.apache.phoenix.schema.AmbiguousColumnException: ERROR 502 > (42702): Column reference ambiguous or duplicate names. columnName=PK > at > org.apache.phoenix.parse.ParseNodeRewriter.visit(ParseNodeRewriter.java:406) > at > org.apache.phoenix.compile.StatementNormalizer.visit(StatementNormalizer.java:177) > at > org.apache.phoenix.compile.StatementNormalizer.visit(StatementNormalizer.java:58) > at > org.apache.phoenix.parse.ColumnParseNode.accept(ColumnParseNode.java:56) > at > org.apache.phoenix.parse.ParseNodeRewriter.rewrite(ParseNodeRewriter.java:111) > at > org.apache.phoenix.compile.StatementNormalizer.normalize(StatementNormalizer.java:107) > at > org.apache.phoenix.jdbc.PhoenixStatement$ExecutableSelectStatement.compilePlan(PhoenixStatement.java:398) > at > org.apache.phoenix.jdbc.PhoenixStatement$ExecutableSelectStatement.compilePlan(PhoenixStatement.java:378) > at > org.apache.phoenix.jdbc.PhoenixPreparedStatement.getMetaData(PhoenixPreparedStatement.java:223) > at org.apache.calcite.avatica.jdbc.JdbcMeta.prepare(JdbcMeta.java:689) > ... 15 more > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (PHOENIX-2930) Cannot resolve columns aliased to its own name
[ https://issues.apache.org/jira/browse/PHOENIX-2930?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Josh Elser updated PHOENIX-2930: Labels: alias (was: alias avatica) > Cannot resolve columns aliased to its own name > -- > > Key: PHOENIX-2930 > URL: https://issues.apache.org/jira/browse/PHOENIX-2930 > Project: Phoenix > Issue Type: Bug >Affects Versions: 4.4.0 >Reporter: Kevin Liew > Labels: alias > > Tableau generates queries that alias a fully-qualified column name to its > shortened name. > Similar to: > {code} > create table test (pk integer primary key); > select test.pk as pk from test group by pk; > {code} > Phoenix reports: > {code} > 8org.apache.calcite.avatica.proto.Responses$ErrorResponse¨ > ðjava.lang.RuntimeException: > org.apache.phoenix.schema.AmbiguousColumnException: ERROR 502 (42702): Column > reference ambiguous or duplicate names. columnName=PK > at org.apache.calcite.avatica.jdbc.JdbcMeta.propagate(JdbcMeta.java:671) > at org.apache.calcite.avatica.jdbc.JdbcMeta.prepare(JdbcMeta.java:695) > at > org.apache.calcite.avatica.remote.LocalService.apply(LocalService.java:208) > at > org.apache.calcite.avatica.remote.Service$PrepareRequest.accept(Service.java:1157) > at > org.apache.calcite.avatica.remote.Service$PrepareRequest.accept(Service.java:1131) > at > org.apache.calcite.avatica.remote.AbstractHandler.apply(AbstractHandler.java:95) > at > org.apache.calcite.avatica.remote.ProtobufHandler.apply(ProtobufHandler.java:46) > at > org.apache.calcite.avatica.server.AvaticaProtobufHandler.handle(AvaticaProtobufHandler.java:127) > at > org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52) > at > org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) > at org.eclipse.jetty.server.Server.handle(Server.java:499) > at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311) > at > org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) > at > org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544) > at > org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) > at > org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) > at java.lang.Thread.run(Thread.java:745) > Caused by: org.apache.phoenix.schema.AmbiguousColumnException: ERROR 502 > (42702): Column reference ambiguous or duplicate names. columnName=PK > at > org.apache.phoenix.parse.ParseNodeRewriter.visit(ParseNodeRewriter.java:406) > at > org.apache.phoenix.compile.StatementNormalizer.visit(StatementNormalizer.java:177) > at > org.apache.phoenix.compile.StatementNormalizer.visit(StatementNormalizer.java:58) > at > org.apache.phoenix.parse.ColumnParseNode.accept(ColumnParseNode.java:56) > at > org.apache.phoenix.parse.ParseNodeRewriter.rewrite(ParseNodeRewriter.java:111) > at > org.apache.phoenix.compile.StatementNormalizer.normalize(StatementNormalizer.java:107) > at > org.apache.phoenix.jdbc.PhoenixStatement$ExecutableSelectStatement.compilePlan(PhoenixStatement.java:398) > at > org.apache.phoenix.jdbc.PhoenixStatement$ExecutableSelectStatement.compilePlan(PhoenixStatement.java:378) > at > org.apache.phoenix.jdbc.PhoenixPreparedStatement.getMetaData(PhoenixPreparedStatement.java:223) > at org.apache.calcite.avatica.jdbc.JdbcMeta.prepare(JdbcMeta.java:689) > ... 15 more > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (PHOENIX-2930) Cannot resolve columns aliased to its own name
[ https://issues.apache.org/jira/browse/PHOENIX-2930?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Josh Elser updated PHOENIX-2930: Environment: (was: HDP 2.5.0.0-518 preview ) > Cannot resolve columns aliased to its own name > -- > > Key: PHOENIX-2930 > URL: https://issues.apache.org/jira/browse/PHOENIX-2930 > Project: Phoenix > Issue Type: Bug >Affects Versions: 4.4.0 >Reporter: Kevin Liew > Labels: alias > > Tableau generates queries that alias a fully-qualified column name to its > shortened name. > Similar to: > {code} > create table test (pk integer primary key); > select test.pk as pk from test group by pk; > {code} > Phoenix reports: > {code} > 8org.apache.calcite.avatica.proto.Responses$ErrorResponse¨ > ðjava.lang.RuntimeException: > org.apache.phoenix.schema.AmbiguousColumnException: ERROR 502 (42702): Column > reference ambiguous or duplicate names. columnName=PK > at org.apache.calcite.avatica.jdbc.JdbcMeta.propagate(JdbcMeta.java:671) > at org.apache.calcite.avatica.jdbc.JdbcMeta.prepare(JdbcMeta.java:695) > at > org.apache.calcite.avatica.remote.LocalService.apply(LocalService.java:208) > at > org.apache.calcite.avatica.remote.Service$PrepareRequest.accept(Service.java:1157) > at > org.apache.calcite.avatica.remote.Service$PrepareRequest.accept(Service.java:1131) > at > org.apache.calcite.avatica.remote.AbstractHandler.apply(AbstractHandler.java:95) > at > org.apache.calcite.avatica.remote.ProtobufHandler.apply(ProtobufHandler.java:46) > at > org.apache.calcite.avatica.server.AvaticaProtobufHandler.handle(AvaticaProtobufHandler.java:127) > at > org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52) > at > org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) > at org.eclipse.jetty.server.Server.handle(Server.java:499) > at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311) > at > org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) > at > org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544) > at > org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) > at > org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) > at java.lang.Thread.run(Thread.java:745) > Caused by: org.apache.phoenix.schema.AmbiguousColumnException: ERROR 502 > (42702): Column reference ambiguous or duplicate names. columnName=PK > at > org.apache.phoenix.parse.ParseNodeRewriter.visit(ParseNodeRewriter.java:406) > at > org.apache.phoenix.compile.StatementNormalizer.visit(StatementNormalizer.java:177) > at > org.apache.phoenix.compile.StatementNormalizer.visit(StatementNormalizer.java:58) > at > org.apache.phoenix.parse.ColumnParseNode.accept(ColumnParseNode.java:56) > at > org.apache.phoenix.parse.ParseNodeRewriter.rewrite(ParseNodeRewriter.java:111) > at > org.apache.phoenix.compile.StatementNormalizer.normalize(StatementNormalizer.java:107) > at > org.apache.phoenix.jdbc.PhoenixStatement$ExecutableSelectStatement.compilePlan(PhoenixStatement.java:398) > at > org.apache.phoenix.jdbc.PhoenixStatement$ExecutableSelectStatement.compilePlan(PhoenixStatement.java:378) > at > org.apache.phoenix.jdbc.PhoenixPreparedStatement.getMetaData(PhoenixPreparedStatement.java:223) > at org.apache.calcite.avatica.jdbc.JdbcMeta.prepare(JdbcMeta.java:689) > ... 15 more > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)