incubator-cassandra-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jonathan Ellis <jbel...@gmail.com>
Subject Re: RRR.resolve broken by commit
Date Wed, 05 Jan 2011 22:35:27 GMT
Reverted, with additional comments to make it more clear why the
refactor incorrect.

On Wed, Jan 5, 2011 at 3:09 PM, Kelvin Kakugawa <kelvin@twitter.com> wrote:
> Could we revert / refactor this:
> https://github.com/apache/cassandra/commit/c57e7c9e
>
> Testing something in trunk and the above refactor prevents CL > ONE reads.
>  The exception is:
> ERROR 19:51:52,271 Internal error processing get_counter
> java.lang.AssertionError:
> org.apache.cassandra.service.DigestMismatchException: Mismatch for key
> DecoratedKey(47663949345540697427011412002459125089,
> 746573742e6b65792e313239343235373039382e303231303034)
> (d41d8cd98f00b204e9800998ecf8427e vs 4474cd24733f6b664b61a22bafac4bfe)
>  at
> org.apache.cassandra.service.StorageProxy.fetchRows(StorageProxy.java:469)
> at
> org.apache.cassandra.service.StorageProxy.readProtocol(StorageProxy.java:352)
>  at
> org.apache.cassandra.thrift.CassandraServer.readColumnFamily(CassandraServer.java:108)
> at
> org.apache.cassandra.thrift.CassandraServer.internal_get(CassandraServer.java:296)
>  at
> org.apache.cassandra.thrift.CassandraServer.get_counter(CassandraServer.java:1075)
> at
> org.apache.cassandra.thrift.Cassandra$Processor$get_counter.process(Cassandra.java:3874)
>  at
> org.apache.cassandra.thrift.Cassandra$Processor.process(Cassandra.java:3227)
> at
> org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:167)
>  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:619)
> Caused by: org.apache.cassandra.service.DigestMismatchException: Mismatch
> for key DecoratedKey(47663949345540697427011412002459125089,
> 746573742e6b65792e313239343235373039382e303231303034)
> (d41d8cd98f00b204e9800998ecf8427e vs 4474cd24733f6b664b61a22bafac4bfe)
>  at
> org.apache.cassandra.service.ReadResponseResolver.resolve(ReadResponseResolver.java:110)
> at
> org.apache.cassandra.service.ReadResponseResolver.resolve(ReadResponseResolver.java:47)
>  at org.apache.cassandra.service.RepairCallback.get(RepairCallback.java:44)
> at
> org.apache.cassandra.service.StorageProxy.fetchRows(StorageProxy.java:463)
>  ... 10 more
>
> Basically, it always considers a read a digest read, so if remote replicas
> have different values a digest mismatch exception will prevent it from
> advancing.  Thanks.
>
> -Kelvin
>



-- 
Jonathan Ellis
Project Chair, Apache Cassandra
co-founder of Riptano, the source for professional Cassandra support
http://riptano.com

Mime
View raw message