Re: JDBC, Select * Cql2 vs Cql3 problem ?

2013-01-31 Thread Andy Cobley
Hi Edward,

I've used Hector for years now myself and know how good it is.  I think I've 
tracked this to a problem in the JDBC driver, I'll post a message and raise a 
ticket over there.  (there is still a possibility that Cassandra 1.2 is sending 
an incorrect CQLresult set)

Andy



On 30 Jan 2013, at 14:26, Edward Capriolo edlinuxg...@gmail.com wrote:

 Darn auto correct cql2 , is only good for compact tables. Make sure you are 
 setting you cql version. Or frankly just switch to Hector / thrift and use 
 things that are know to work for years now.
 
 On Wednesday, January 30, 2013, Edward Capriolo edlinuxg...@gmail.com wrote:
  You really can't mix cql2 and cql3. Cql2 does not understand cql3s sparse 
  tables. Technically it ,barfs all over the place. Cql2 is only good for 
  contact tables.
 
  On Wednesday, January 30, 2013, Andy Cobley 
  acob...@computing.dundee.ac.uk wrote:
  Well this is getting stranger,   for me  with this simple table 
  definition, 
  select key,gender from users
  is also failing with a null pointer exception
  Andy
  On 29 Jan 2013, at 13:50, Andy Cobley acob...@computing.dundee.ac.uk 
  wrote:


The University of Dundee is a Scottish Registered Charity, No. SC015096.




Re: JDBC, Select * Cql2 vs Cql3 problem ?

2013-01-30 Thread Andy Cobley
Well this is getting stranger,   for me  with this simple table definition, 

select key,gender from users

is also failing with a null pointer exception

Andy

On 29 Jan 2013, at 13:50, Andy Cobley acob...@computing.dundee.ac.uk wrote:

 When connecting to Cassandra 1.2.0 from CQLSH the table was created with:
 
 CREATE KEYSPACE test WITH replication = {'class': 'SimpleStrategy', 
 'replication_factor' : 1};
 cqlsh use test;
 cqlsh:test create columnfamily users (KEY varchar Primary key, password 
 varchar, gender varchar) ;
 cqlsh:test INSERT INTO users (KEY, password) VALUES ('jsmith', 'ch@ngem3a');
 cqlsh:test INSERT INTO users (KEY, gender) VALUES ('jbrown', 'male');
 
 stack trace (generated et.printStackTrace()) is:
 
 Can not execute statement java.lang.NullPointerException
   at org.apache.cassandra.cql.jdbc.TypedColumn.init(TypedColumn.java:45)
   at 
 org.apache.cassandra.cql.jdbc.CassandraResultSet.createColumn(CassandraResultSet.java:972)
   at 
 org.apache.cassandra.cql.jdbc.CassandraResultSet.populateColumns(CassandraResultSet.java:156)
   at 
 org.apache.cassandra.cql.jdbc.CassandraResultSet.init(CassandraResultSet.java:130)
   at 
 org.apache.cassandra.cql.jdbc.CassandraStatement.doExecute(CassandraStatement.java:167)
   at 
 org.apache.cassandra.cql.jdbc.CassandraStatement.executeQuery(CassandraStatement.java:227)
   at uk.ac.dundee.computing.aec.test.test.doGet(test.java:51)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
   at 
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
   at 
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
   at 
 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
   at 
 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
   at 
 org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
   at 
 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
   at 
 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
   at 
 org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
   at 
 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
   at 
 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
   at 
 org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
   at 
 org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
   at 
 org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
   at 
 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
   at 
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
   at java.lang.Thread.run(Thread.java:680)
 
 Hope that helps !
 
 Andy
 
 
 On 29 Jan 2013, at 07:17, aaron morton aa...@thelastpickle.com wrote:
 
 What is your table spec ? 
 Do you have the full stack trace from the exception ? 
 
 Cheers
 
 -
 Aaron Morton
 Freelance Cassandra Developer
 New Zealand
 
 @aaronmorton
 http://www.thelastpickle.com
 
 On 29/01/2013, at 8:15 AM, Andy Cobley acob...@computing.dundee.ac.uk 
 wrote:
 
 I have the following code in my app using the JDBC 
 (cassandra-jdbc-1.1.2.jar) drivers to CQL:
 
 try {
 rs= stmt.executeQuery(SELECT * FROM users);
 }catch(Exception et){
 System.out.println(Can not execute statement +et);
 }
 
 When connecting to a CQL2 server (cassandra 1.1.5) the code works as 
 expected returning a result set .  When connecting to CQL3 (Cassandra 1.2) 
 I catch the following exception:
 
 Can not execute statement java.lang.NullPointerException
 
 The Select statement (Select * from users) does work from CQLSH as 
 expected.  Is there a problem with my code or something else ?
 
 Andy C
 School of Computing
 University of Dundee.
 
 
 
 The University of Dundee is a Scottish Registered Charity, No. SC015096.
 
 
 The University of Dundee is a Scottish Registered Charity, No. SC015096.


The University of Dundee is a Scottish Registered Charity, No. SC015096.




Re: JDBC, Select * Cql2 vs Cql3 problem ?

2013-01-30 Thread Edward Capriolo
You really can't mix cql2 and cql3. Cql2 does not understand cql3s sparse
tables. Technically it ,barfs all over the place. Cql2 is only good for
contact tables.

On Wednesday, January 30, 2013, Andy Cobley acob...@computing.dundee.ac.uk
wrote:
 Well this is getting stranger,   for me  with this simple table
definition,
 select key,gender from users
 is also failing with a null pointer exception
 Andy
 On 29 Jan 2013, at 13:50, Andy Cobley acob...@computing.dundee.ac.uk
wrote:

 When connecting to Cassandra 1.2.0 from CQLSH the table was created with:
 CREATE KEYSPACE test WITH replication = {'class': 'SimpleStrategy',
'replication_factor' : 1};
 cqlsh use test;
 cqlsh:test create columnfamily users (KEY varchar Primary key, password
varchar, gender varchar) ;
 cqlsh:test INSERT INTO users (KEY, password) VALUES ('jsmith', 'ch@ngem3a
');
 cqlsh:test INSERT INTO users (KEY, gender) VALUES ('jbrown', 'male');
 stack trace (generated et.printStackTrace()) is:
 Can not execute statement java.lang.NullPointerException
 at org.apache.cassandra.cql.jdbc.TypedColumn.init(TypedColumn.java:45)
 at
org.apache.cassandra.cql.jdbc.CassandraResultSet.createColumn(CassandraResultSet.java:972)
 at
org.apache.cassandra.cql.jdbc.CassandraResultSet.populateColumns(CassandraResultSet.java:156)
 at
org.apache.cassandra.cql.jdbc.CassandraResultSet.init(CassandraResultSet.java:130)
 at
org.apache.cassandra.cql.jdbc.CassandraStatement.doExecute(CassandraStatement.java:167)
 at
org.apache.cassandra.cql.jdbc.CassandraStatement.executeQuery(CassandraStatement.java:227)
 at uk.ac.dundee.computing.aec.test.test.doGet(test.java:51)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
 at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
 at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
 at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
 at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
 at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:

 The University of Dundee is a Scottish Registered Charity, No. SC015096.


Re: JDBC, Select * Cql2 vs Cql3 problem ?

2013-01-30 Thread Edward Capriolo
Darn auto correct cql2 , is only good for compact tables. Make sure you are
setting you cql version. Or frankly just switch to Hector / thrift and use
things that are know to work for years now.

On Wednesday, January 30, 2013, Edward Capriolo edlinuxg...@gmail.com
wrote:
 You really can't mix cql2 and cql3. Cql2 does not understand cql3s sparse
tables. Technically it ,barfs all over the place. Cql2 is only good for
contact tables.

 On Wednesday, January 30, 2013, Andy Cobley 
acob...@computing.dundee.ac.uk wrote:
 Well this is getting stranger,   for me  with this simple table
definition,
 select key,gender from users
 is also failing with a null pointer exception
 Andy
 On 29 Jan 2013, at 13:50, Andy Cobley acob...@computing.dundee.ac.uk
wrote:

 When connecting to Cassandra 1.2.0 from CQLSH the table was created with:
 CREATE KEYSPACE test WITH replication = {'class': 'SimpleStrategy',
'replication_factor' : 1};
 cqlsh use test;
 cqlsh:test create columnfamily users (KEY varchar Primary key, password
varchar, gender varchar) ;
 cqlsh:test INSERT INTO users (KEY, password) VALUES ('jsmith',
'ch@ngem3a');
 cqlsh:test INSERT INTO users (KEY, gender) VALUES ('jbrown', 'male');
 stack trace (generated et.printStackTrace()) is:
 Can not execute statement java.lang.NullPointerException
 at org.apache.cassandra.cql.jdbc.TypedColumn.init(TypedColumn.java:45)
 at
org.apache.cassandra.cql.jdbc.CassandraResultSet.createColumn(CassandraResultSet.java:972)
 at
org.apache.cassandra.cql.jdbc.CassandraResultSet.populateColumns(CassandraResultSet.java:156)
 at
org.apache.cassandra.cql.jdbc.CassandraResultSet.init(CassandraResultSet.java:130)
 at
org.apache.cassandra.cql.jdbc.CassandraStatement.doExecute(CassandraStatement.java:167)
 at
org.apache.cassandra.cql.jdbc.CassandraStatement.executeQuery(CassandraStatement.java:227)
 at uk.ac.dundee.computing.aec.test.test.doGet(test.java:51)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
 at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
 at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
 at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
 at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
 at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:

 The University of Dundee is a Scottish Registered Charity, No. SC015096.


Re: JDBC, Select * Cql2 vs Cql3 problem ?

2013-01-29 Thread Andy Cobley
When connecting to Cassandra 1.2.0 from CQLSH the table was created with:

CREATE KEYSPACE test WITH replication = {'class': 'SimpleStrategy', 
'replication_factor' : 1};
cqlsh use test;
cqlsh:test create columnfamily users (KEY varchar Primary key, password 
varchar, gender varchar) ;
cqlsh:test INSERT INTO users (KEY, password) VALUES ('jsmith', 'ch@ngem3a');
cqlsh:test INSERT INTO users (KEY, gender) VALUES ('jbrown', 'male');

stack trace (generated et.printStackTrace()) is:

Can not execute statement java.lang.NullPointerException
at org.apache.cassandra.cql.jdbc.TypedColumn.init(TypedColumn.java:45)
at 
org.apache.cassandra.cql.jdbc.CassandraResultSet.createColumn(CassandraResultSet.java:972)
at 
org.apache.cassandra.cql.jdbc.CassandraResultSet.populateColumns(CassandraResultSet.java:156)
at 
org.apache.cassandra.cql.jdbc.CassandraResultSet.init(CassandraResultSet.java:130)
at 
org.apache.cassandra.cql.jdbc.CassandraStatement.doExecute(CassandraStatement.java:167)
at 
org.apache.cassandra.cql.jdbc.CassandraStatement.executeQuery(CassandraStatement.java:227)
at uk.ac.dundee.computing.aec.test.test.doGet(test.java:51)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at 
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at 
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
at 
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
at 
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:680)

Hope that helps !

Andy


On 29 Jan 2013, at 07:17, aaron morton aa...@thelastpickle.com wrote:

 What is your table spec ? 
 Do you have the full stack trace from the exception ? 
 
 Cheers
 
 -
 Aaron Morton
 Freelance Cassandra Developer
 New Zealand
 
 @aaronmorton
 http://www.thelastpickle.com
 
 On 29/01/2013, at 8:15 AM, Andy Cobley acob...@computing.dundee.ac.uk wrote:
 
 I have the following code in my app using the JDBC 
 (cassandra-jdbc-1.1.2.jar) drivers to CQL:
 
 try {
  rs= stmt.executeQuery(SELECT * FROM users);
 }catch(Exception et){
  System.out.println(Can not execute statement +et);
 }
 
 When connecting to a CQL2 server (cassandra 1.1.5) the code works as 
 expected returning a result set .  When connecting to CQL3 (Cassandra 1.2) I 
 catch the following exception:
 
 Can not execute statement java.lang.NullPointerException
 
 The Select statement (Select * from users) does work from CQLSH as expected. 
  Is there a problem with my code or something else ?
 
 Andy C
 School of Computing
 University of Dundee.
 
 
 
 The University of Dundee is a Scottish Registered Charity, No. SC015096.
 


The University of Dundee is a Scottish Registered Charity, No. SC015096.




JDBC, Select * Cql2 vs Cql3 problem ?

2013-01-28 Thread Andy Cobley
I have the following code in my app using the JDBC (cassandra-jdbc-1.1.2.jar) 
drivers to CQL:

try {
rs= stmt.executeQuery(SELECT * FROM users);
}catch(Exception et){
System.out.println(Can not execute statement +et);
}

When connecting to a CQL2 server (cassandra 1.1.5) the code works as expected 
returning a result set .  When connecting to CQL3 (Cassandra 1.2) I catch the 
following exception:

Can not execute statement java.lang.NullPointerException

The Select statement (Select * from users) does work from CQLSH as expected.  
Is there a problem with my code or something else ?

Andy C
School of Computing
University of Dundee.




The University of Dundee is a Scottish Registered Charity, No. SC015096.




Re: JDBC, Select * Cql2 vs Cql3 problem ?

2013-01-28 Thread aaron morton
What is your table spec ? 
Do you have the full stack trace from the exception ? 

Cheers

-
Aaron Morton
Freelance Cassandra Developer
New Zealand

@aaronmorton
http://www.thelastpickle.com

On 29/01/2013, at 8:15 AM, Andy Cobley acob...@computing.dundee.ac.uk wrote:

 I have the following code in my app using the JDBC (cassandra-jdbc-1.1.2.jar) 
 drivers to CQL:
 
 try {
   rs= stmt.executeQuery(SELECT * FROM users);
 }catch(Exception et){
   System.out.println(Can not execute statement +et);
 }
 
 When connecting to a CQL2 server (cassandra 1.1.5) the code works as expected 
 returning a result set .  When connecting to CQL3 (Cassandra 1.2) I catch the 
 following exception:
 
 Can not execute statement java.lang.NullPointerException
 
 The Select statement (Select * from users) does work from CQLSH as expected.  
 Is there a problem with my code or something else ?
 
 Andy C
 School of Computing
 University of Dundee.
 
 
 
 The University of Dundee is a Scottish Registered Charity, No. SC015096.