[
https://issues.apache.org/jira/browse/CASSANDRA-120?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12706029#action_12706029
]
Hudson commented on CASSANDRA-120:
----------------------------------
Integrated in Cassandra #59 (See
[http://hudson.zones.apache.org/hudson/job/Cassandra/59/])
change Message body to byte[]. this reveals where there are problems:
everything that is 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.
patch by jbellis; reviewed by nk11 for
r/m DataImporter; it's not useful outside of FB
patch by jbellis; reviewed by nk11 for
refactor HttpConnection to use its own executor instead of abusing
MessagingService. This will let us refactor Message body to a byte[].
patch by jbellis; reviewed by nk11 for
add constructor to DTPE for most commonly used values (single thread, no
timeout, LinkedBlockingQueue)
patch by jbellis; reviewed by nk11 for
demonstrate problem with _blocking methods by checking insert return values.
patch by jbellis; reviewed by nk11 for
> 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
> Priority: Critical
> 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.