[ 
https://issues.apache.org/jira/browse/CASSANDRA-9664?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14804684#comment-14804684
 ] 

Andy Tolbert edited comment on CASSANDRA-9664 at 9/17/15 11:23 PM:
-------------------------------------------------------------------

Is it required for a where clause to be present now?  I've been experimenting 
on this branch w/ the java-driver and noticed that I now get an NPE when not 
providing a where clause:

{noformat}ERROR [SharedPool-Worker-1] 2015-09-17 17:50:02,862 
ErrorMessage.java:336 - Unexpected exception during request
java.lang.NullPointerException: null
        at 
org.apache.cassandra.db.view.View.relationsToWhereClause(View.java:719) 
~[main/:na]
        at 
org.apache.cassandra.cql3.statements.CreateViewStatement.announceMigration(CreateViewStatement.java:224)
 ~[main/:na]
        at 
org.apache.cassandra.cql3.statements.SchemaAlteringStatement.execute(SchemaAlteringStatement.java:93)
 ~[main/:na]
        at 
org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:204)
 ~[main/:na]
        at 
org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:235) 
~[main/:na]
        at 
org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:220) 
~[main/:na]
        at 
org.apache.cassandra.cql3.CustomPayloadMirroringQueryHandler.process(CustomPayloadMirroringQueryHandler.java:43)
 ~[main/:na]
        at 
org.apache.cassandra.transport.messages.QueryMessage.execute(QueryMessage.java:115)
 ~[main/:na]
        at 
org.apache.cassandra.transport.Message$Dispatcher.channelRead0(Message.java:507)
 [main/:na]
        at 
org.apache.cassandra.transport.Message$Dispatcher.channelRead0(Message.java:401)
 [main/:na]
        at 
io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
 [netty-all-4.0.23.Final.jar:4.0.23.Final]
        at 
io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333)
 [netty-all-4.0.23.Final.jar:4.0.23.Final]
        at 
io.netty.channel.AbstractChannelHandlerContext.access$700(AbstractChannelHandlerContext.java:32)
 [netty-all-4.0.23.Final.jar:4.0.23.Final]
        at 
io.netty.channel.AbstractChannelHandlerContext$8.run(AbstractChannelHandlerContext.java:324)
 [netty-all-4.0.23.Final.jar:4.0.23.Final]
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
[na:1.8.0_25]
        at 
org.apache.cassandra.concurrent.AbstractTracingAwareExecutorService$FutureTask.run(AbstractTracingAwareExecutorService.java:164)
 [main/:na]
        at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:105) 
[main/:na]
        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_25]
{noformat}

Where on trunk C* surfaces an InvalidQueryException (as each primary key column 
I declare must include a 'IS NOT NULL' in my where clause).  

-I'm also wondering why the 'IS NOT NULL' declaration for primary keys is 
required (couldn't that be implicit?) although thats not new on this branch and 
there might have been previous conversations about that (I'll look through 
tickets and strikethrough and link to that if I find it).-  
[_Explanation_|https://issues.apache.org/jira/browse/CASSANDRA-6477?focusedCommentId=14627173&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14627173]
 (thanks [~jkni] :) )


was (Author: andrew.tolbert):
Is it required for a where clause to be present now?  I've been experimenting 
on this branch w/ the java-driver and noticed that I now get an NPE when not 
providing a where clause:

{noformat}ERROR [SharedPool-Worker-1] 2015-09-17 17:50:02,862 
ErrorMessage.java:336 - Unexpected exception during request
java.lang.NullPointerException: null
        at 
org.apache.cassandra.db.view.View.relationsToWhereClause(View.java:719) 
~[main/:na]
        at 
org.apache.cassandra.cql3.statements.CreateViewStatement.announceMigration(CreateViewStatement.java:224)
 ~[main/:na]
        at 
org.apache.cassandra.cql3.statements.SchemaAlteringStatement.execute(SchemaAlteringStatement.java:93)
 ~[main/:na]
        at 
org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:204)
 ~[main/:na]
        at 
org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:235) 
~[main/:na]
        at 
org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:220) 
~[main/:na]
        at 
org.apache.cassandra.cql3.CustomPayloadMirroringQueryHandler.process(CustomPayloadMirroringQueryHandler.java:43)
 ~[main/:na]
        at 
org.apache.cassandra.transport.messages.QueryMessage.execute(QueryMessage.java:115)
 ~[main/:na]
        at 
org.apache.cassandra.transport.Message$Dispatcher.channelRead0(Message.java:507)
 [main/:na]
        at 
org.apache.cassandra.transport.Message$Dispatcher.channelRead0(Message.java:401)
 [main/:na]
        at 
io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
 [netty-all-4.0.23.Final.jar:4.0.23.Final]
        at 
io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333)
 [netty-all-4.0.23.Final.jar:4.0.23.Final]
        at 
io.netty.channel.AbstractChannelHandlerContext.access$700(AbstractChannelHandlerContext.java:32)
 [netty-all-4.0.23.Final.jar:4.0.23.Final]
        at 
io.netty.channel.AbstractChannelHandlerContext$8.run(AbstractChannelHandlerContext.java:324)
 [netty-all-4.0.23.Final.jar:4.0.23.Final]
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
[na:1.8.0_25]
        at 
org.apache.cassandra.concurrent.AbstractTracingAwareExecutorService$FutureTask.run(AbstractTracingAwareExecutorService.java:164)
 [main/:na]
        at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:105) 
[main/:na]
        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_25]
{noformat}

Where on trunk C* surfaces an InvalidQueryException (as each primary key column 
I declare must include a 'IS NOT NULL' in my where clause).  

I'm also wondering why the 'IS NOT NULL' declaration for primary keys is 
required (couldn't that be implicit?) although thats not new on this branch and 
there might have been previous conversations about that (I'll look through 
tickets and strikethrough and link to that if I find it).

> Allow MV's select statements to be more complex
> -----------------------------------------------
>
>                 Key: CASSANDRA-9664
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9664
>             Project: Cassandra
>          Issue Type: New Feature
>            Reporter: Carl Yeksigian
>            Assignee: Tyler Hobbs
>              Labels: client-impacting, doc-impacting
>             Fix For: 3.0.0 rc1
>
>
> [Materialized Views|https://issues.apache.org/jira/browse/CASSANDRA-6477] add 
> support for a syntax which includes a {{SELECT}} statement, but only allows 
> selection of direct columns, and does not allow any filtering to take place.
> We should add support to the MV {{SELECT}} statement to bring better parity 
> with the normal CQL {{SELECT}} statement, specifically simple functions in 
> the selected columns, as well as specifying a {{WHERE}} clause.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to