axel-sirota opened a new issue #7722:
URL: https://github.com/apache/pulsar/issues/7722


   **Describe the bug**
   When using Pulsar SQL and running the query:
   ```
   select * from pulsar."public/default/"."logging-function-logs";
   ```
   Which is a misformatted query, the SQL server dies.
   
   **To Reproduce**
   Steps to reproduce the behavior:
   1. Start SQL server: bin/pulsar sql-worker run
   2. Create a topic with hyphens: `./bin/pulsar-admin sources create --name 
generator --destinationTopicName logging-function-logs --source-type 
data-generator`
   3. Inside the Presto console run the query: `select * from 
pulsar."public/default/"."logging-function-logs";`
   **Expected behavior**
   An error describing the format of the correct query
   
   **Error**
   ```
   2020-08-02T22:49:48.719Z     WARN    statement-response-1    
com.facebook.presto.server.ThrowableMapper      Request failed for 
/v1/statement/20200802_224948_00000_q6e4f/1
   java.lang.IllegalArgumentException: Invalid namespace format. namespace: 
public/default/
        at 
org.apache.pulsar.common.naming.NamespaceName.validateNamespaceName(NamespaceName.java:193)
        at 
org.apache.pulsar.common.naming.NamespaceName.get(NamespaceName.java:58)
        at org.apache.pulsar.common.naming.TopicName.<init>(TopicName.java:159)
        at org.apache.pulsar.common.naming.TopicName.<init>(TopicName.java:38)
        at org.apache.pulsar.common.naming.TopicName$1.load(TopicName.java:63)
        at org.apache.pulsar.common.naming.TopicName$1.load(TopicName.java:60)
        at 
com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3527)
        at 
com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2276)
        at 
com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2154)
        at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2044)
        at com.google.common.cache.LocalCache.get(LocalCache.java:3951)
        at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3973)
        at 
com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4957)
        at org.apache.pulsar.common.naming.TopicName.get(TopicName.java:88)
        at 
org.apache.pulsar.sql.presto.PulsarMetadata.getTableMetadata(PulsarMetadata.java:283)
        at 
org.apache.pulsar.sql.presto.PulsarMetadata.getTableMetadata(PulsarMetadata.java:161)
        at 
com.facebook.presto.metadata.MetadataManager.getTableMetadata(MetadataManager.java:377)
        at 
com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.visitTable(StatementAnalyzer.java:841)
        at 
com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.visitTable(StatementAnalyzer.java:257)
        at com.facebook.presto.sql.tree.Table.accept(Table.java:53)
        at com.facebook.presto.sql.tree.AstVisitor.process(AstVisitor.java:27)
        at 
com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.process(StatementAnalyzer.java:269)
        at 
com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.analyzeFrom(StatementAnalyzer.java:1787)
        at 
com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.visitQuerySpecification(StatementAnalyzer.java:944)
        at 
com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.visitQuerySpecification(StatementAnalyzer.java:257)
        at 
com.facebook.presto.sql.tree.QuerySpecification.accept(QuerySpecification.java:127)
        at com.facebook.presto.sql.tree.AstVisitor.process(AstVisitor.java:27)
        at 
com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.process(StatementAnalyzer.java:269)
        at 
com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.process(StatementAnalyzer.java:279)
        at 
com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.visitQuery(StatementAnalyzer.java:675)
        at 
com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.visitQuery(StatementAnalyzer.java:257)
        at com.facebook.presto.sql.tree.Query.accept(Query.java:94)
        at com.facebook.presto.sql.tree.AstVisitor.process(AstVisitor.java:27)
        at 
com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.process(StatementAnalyzer.java:269)
        at 
com.facebook.presto.sql.analyzer.StatementAnalyzer.analyze(StatementAnalyzer.java:243)
        at com.facebook.presto.sql.analyzer.Analyzer.analyze(Analyzer.java:72)
        at com.facebook.presto.sql.analyzer.Analyzer.analyze(Analyzer.java:64)
        at 
com.facebook.presto.execution.SqlQueryExecution.<init>(SqlQueryExecution.java:169)
        at 
com.facebook.presto.execution.SqlQueryExecution$SqlQueryExecutionFactory.createQueryExecution(SqlQueryExecution.java:677)
        at 
com.facebook.presto.execution.SqlQueryManager.createQueryInternal(SqlQueryManager.java:444)
        at 
com.facebook.presto.execution.SqlQueryManager.lambda$createQuery$3(SqlQueryManager.java:377)
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        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:748)
   ```
   
   **Desktop (please complete the following information):**
   Docker image in Macos
   
   


----------------------------------------------------------------
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:
[email protected]


Reply via email to