You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jonathan Ellis (JIRA)" <ji...@apache.org> on 2009/08/14 17:39:14 UTC
[jira] Commented: (CASSANDRA-308) Thrift client forwarding the null
keys to the servers
[ https://issues.apache.org/jira/browse/CASSANDRA-308?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12743246#action_12743246 ]
Jonathan Ellis commented on CASSANDRA-308:
------------------------------------------
The real fix is for the server to do the validation; we don't want to rely on the client since there are so many implementations of such widely varying maturity.
I've attached a patch for this to THRIFT-562.
> Thrift client forwarding the null keys to the servers
> -----------------------------------------------------
>
> Key: CASSANDRA-308
> URL: https://issues.apache.org/jira/browse/CASSANDRA-308
> Project: Cassandra
> Issue Type: Bug
> Components: Core
> Affects Versions: 0.3
> Environment: Centos 3.0, cassendra trunk, JVM 1.6, tomcat 1.6
> Reporter: Vijay
> Priority: Minor
> Fix For: 0.5
>
>
> Thrift client is suppose to validate the input before it actually sends it to the server but it did not....
> client logs are like the below: (Java client lib)
> org.apache.thrift.TApplicationException: Internal error processing get_slice
> at org.apache.thrift.TApplicationException.read(TApplicationException.java:107)
> at org.apache.cassandra.service.Cassandra$Client.recv_get_slice(Cassandra.java:178)
> at org.apache.cassandra.service.Cassandra$Client.get_slice(Cassandra.java:154)
> at com.webex.dms.datastore.DataStoreRead.readObject(DataStoreRead.java:163)
> at com.webex.dms.repository.ReadDocument.load(ReadDocument.java:87)
> at com.webex.dms.repository.Document.readBasic(Document.java:307)
> Server Logs are as below:
> DEBUG [pool-1-thread-448] 2009-07-20 09:27:50,831 CassandraServer.java (line 172) get_slice_from
> ERROR [pool-1-thread-448] 2009-07-20 09:27:50,837 Cassandra.java (line 844) Internal error processing get_slice
> java.lang.NullPointerException
> at org.apache.cassandra.service.ThriftValidation.validateKey(ThriftValidation.java:18)
> at org.apache.cassandra.service.CassandraServer.readColumnFamily(CassandraServer.java:75)
> at org.apache.cassandra.service.CassandraServer.get_slice(CassandraServer.java:181)
> at org.apache.cassandra.service.Cassandra$Processor$get_slice.process(Cassandra.java:838)
> at org.apache.cassandra.service.Cassandra$Processor.process(Cassandra.java:796)
> at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:252)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
> at java.lang.Thread.run(Unknown Source)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.