[prev in list] [next in list] [prev in thread] [next in thread] 

List:       cassandra-commits
Subject:    [jira] Commented: (CASSANDRA-120) mutation replies are not
From:       "Jonathan Ellis (JIRA)" <jira () apache ! org>
Date:       2009-04-30 20:00:33
Message-ID: 725836295.1241121633062.JavaMail.jira () brutus
[Download RAW message or body]


    [ https://issues.apache.org/jira/browse/CASSANDRA-120?page=com.atlassian.jira.plug \
in.system.issuetabpanels:comment-tabpanel&focusedCommentId=12704769#action_12704769 ] \


Jonathan Ellis commented on CASSANDRA-120:
------------------------------------------

05
    change Message body to byte[].  this reveals where there are problems: everything \
thatis using any of the send messages already needs to be doing that or they're \
broken.  the good ones I just unwrap; the broken ones I fixed except for MoveMessage \
which doesn't even have a byte[] serializer yet, so I left that one broken.  \
writeResponseResolver is the specific case that caused the bug report.

04
    r/m DataImporter; it's not useful outside of FB

03
    refactor HttpConnection to use its own executor instead of abusing \
MessagingService.  This will let us refactor Message body to a byte[].

02
    add constructor to DTPE for most commonly used values (single thread, no timeout, \
LinkedBlockingQueue)

01
    CASSANDRA-120 demonstrate the problem by checking insert return values (see \
CASSANDRA-102 for how to run the system tests)


> mutation replies are not correctly deserialized by originator
> -------------------------------------------------------------
> 
> Key: CASSANDRA-120
> URL: https://issues.apache.org/jira/browse/CASSANDRA-120
> Project: Cassandra
> Issue Type: Bug
> Reporter: Jonathan Ellis
> Assignee: Jonathan Ellis
> Fix For: 0.3
> 
> Attachments: 0001-CASSANDRA-120-demonstrate-the-problem-by-checking-inse.txt, \
> 0002-add-constructor-to-DTPE-for-most-commonly-used-values.txt, \
> 0003-refactor-HttpConnection-to-use-its-own-executor-instea.txt, \
> 0004-r-m-DataImporter-it-s-not-useful-outside-of-FB.txt, \
> 0005-change-Message-body-to-byte-.-this-reveals-where-the.txt 
> 
> these lines in WriteResponseResolver
> 			Object[] body = response.getMessageBody();
> 			WriteResponse writeResponse = (WriteResponse) body[0];
> cause this exception
> java.lang.ClassCastExceptionException: [B cannot be cast to \
> org.apache.cassandra.db.WriteResponse  at \
> org.apache.cassandra.service.WriteResponseResolver.resolve(WriteResponseResolver.java:50)
>   at org.apache.cassandra.service.WriteResponseResolver.resolve(WriteResponseResolver.java:31)
>   at org.apache.cassandra.service.QuorumResponseHandler.get(QuorumResponseHandler.java:101)
>   at org.apache.cassandra.service.StorageProxy.insertBlocking(StorageProxy.java:132)
>  because of course only byte[] is sent over the wire

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic