[
https://issues.apache.org/jira/browse/CASSANDRA-5498?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13639689#comment-13639689
]
Jason Brown edited comment on CASSANDRA-5498 at 4/23/13 10:01 PM:
------------------------------------------------------------------
bq. Now I'm puzzled, because I don't see how this works...
Are you referring to the NPE or the AssertionError? In my statement above, I
mean the NPE was caught and the client app got a TApplicationException. Here
the output via an astyanax client:
{code}2013-04-15 18:27:29,618 ERROR
com.netflix.cassandra.NetflixConnectionPoolMonitor:428 [http-0.0.0.0-7101-33]
[trackError] Unknown operation error
com.netflix.astyanax.connectionpool.exceptions.ThriftStateException:
ThriftStateException:
[host=ec2-54-234-29-24.compute-1.amazonaws.com(10.29.141.78):7102,
latency=2(2), attempts=1]org.apache.thrift.TApplicationException:
Internal error processing batch_mutate
at
com.netflix.astyanax.thrift.ThriftConverter.ToConnectionPoolException(ThriftConverter.java:177)
at
com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:65)
at
com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:28)
at
com.netflix.astyanax.thrift.ThriftSyncConnectionFactoryImpl$ThriftConnection.execute(ThriftSyncConnectionFactoryImpl
{code}
I'll test again with throwing the AE, but I can see from your thrift bug report
that it might, in fact, be an issue. Sorry if my early statement was unclear.
was (Author: jasobrown):
bq. Now I'm puzzled, because I don't see how this works...
Are you referring to the NPE or the AssertionError? In my statement above, I
mean the NPE was caught and the client app got a TApplicationException. Here
the output via an astyanax client:
{code]2013-04-15 18:27:29,618 ERROR
com.netflix.cassandra.NetflixConnectionPoolMonitor:428 [http-0.0.0.0-7101-33]
[trackError] Unknown operation error
com.netflix.astyanax.connectionpool.exceptions.ThriftStateException:
ThriftStateException:
[host=ec2-54-234-29-24.compute-1.amazonaws.com(10.29.141.78):7102,
latency=2(2), attempts=1]org.apache.thrift.TApplicationException:
Internal error processing batch_mutate
at
com.netflix.astyanax.thrift.ThriftConverter.ToConnectionPoolException(ThriftConverter.java:177)
at
com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:65)
at
com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:28)
at
com.netflix.astyanax.thrift.ThriftSyncConnectionFactoryImpl$ThriftConnection.execute(ThriftSyncConnectionFactoryImpl
{code}
I'll test again with throwing the AE, but I can see from your thrift bug report
that it might, in fact, be an issue. Sorry if my early statement was unclear.
> Possible NPE on EACH_QUORUM writes
> ----------------------------------
>
> Key: CASSANDRA-5498
> URL: https://issues.apache.org/jira/browse/CASSANDRA-5498
> Project: Cassandra
> Issue Type: Bug
> Components: Core
> Affects Versions: 1.1.10
> Reporter: Jason Brown
> Assignee: Jason Brown
> Priority: Minor
> Labels: each_quorum, ec2
> Fix For: 1.1.12, 1.2.5, 2.0
>
> Attachments: 5498-v1.patch, 5498-v2.patch
>
>
> When upgrading from 1.0 to 1.1, we observed that
> DatacenterSyncWriteResponseHandler.assureSufficientLiveNodes() can throw an
> NPE if one of the writeEndpoints has a DC that is not listed in the keyspace
> while one of the nodes is down. We observed this while running in EC2, and
> using the Ec2Snitch. The exception typically was was brief, but a certain
> segment of writes (using EACH_QUORUM) failed during that time.
> This ticket will address the NPE in DSWRH, while a followup ticket will be
> created once we get to the bottom of the incorrect DC being reported from
> Ec2Snitch.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira