[ https://issues.apache.org/jira/browse/CASSANDRA-11117?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15525530#comment-15525530 ]
Vadim Tsesko commented on CASSANDRA-11117: ------------------------------------------ I tried to trace the problem using Cassandra 3.7. The problematic value overflowing the histogram is added in the following stack trace: {code:java} at org.apache.cassandra.utils.EstimatedHistogram.add(EstimatedHistogram.java:134) [apache-cassandra-3.7.jar:3.7] at org.apache.cassandra.metrics.EstimatedHistogramReservoir.update(EstimatedHistogramReservoir.java:56) [apache-cassandra-3.7.jar:3.7] at com.codahale.metrics.Histogram.update(Histogram.java:39) [metrics-core-3.1.0.jar:3.1.0] at org.apache.cassandra.metrics.TableMetrics$TableHistogram.update(TableMetrics.java:828) [apache-cassandra-3.7.jar:3.7] at org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1331) [apache-cassandra-3.7.jar:3.7] at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:529) [apache-cassandra-3.7.jar:3.7] at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:399) [apache-cassandra-3.7.jar:3.7] at org.apache.cassandra.db.Mutation.applyFuture(Mutation.java:202) [apache-cassandra-3.7.jar:3.7] at org.apache.cassandra.db.Mutation.apply(Mutation.java:214) [apache-cassandra-3.7.jar:3.7] at org.apache.cassandra.db.Mutation.apply(Mutation.java:228) [apache-cassandra-3.7.jar:3.7] at org.apache.cassandra.service.StorageProxy$8.runMayThrow(StorageProxy.java:1343) ~[apache-cassandra-3.7.jar:3.7] at org.apache.cassandra.service.StorageProxy$LocalMutationRunnable.run(StorageProxy.java:2519) ~[apache-cassandra-3.7.jar:3.7] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[na:1.8.0_102] at org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:164) ~[apache-cassandra-3.7.jar:3.7] at org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$LocalSessionFutureTask.run(AbstractLocalAwareExecutorService.java:136) ~[apache-cassandra-3.7.jar:3.7] at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:105) ~[apache-cassandra-3.7.jar:3.7] at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_102] {code} The problem is caused by using time interval in {{ColumnFamilyStore.apply()}} returned by {{Memtable.put()}} which is calculated by {{Rows.merge()}} method. It seems that in case of an update for a nonexisting row an *absolute* time value is returned, not time delta. That leads to very large values being sent to the histogram (as large as {{Long.MAX_VALUE / 10}} judging by debugging on real data). We decided to patch Cassandra and to ignore the overflowed histogram values temporarily. > ColUpdateTimeDeltaHistogram histogram overflow > ---------------------------------------------- > > Key: CASSANDRA-11117 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11117 > Project: Cassandra > Issue Type: Bug > Reporter: Chris Lohfink > Assignee: Joel Knighton > Priority: Minor > Fix For: 2.2.x, 3.0.x, 3.x > > > {code} > getting attribute Mean of > org.apache.cassandra.metrics:type=ColumnFamily,name=ColUpdateTimeDeltaHistogram > threw an exceptionjavax.management.RuntimeMBeanException: > java.lang.IllegalStateException: Unable to compute ceiling for max when > histogram overflowed > {code} > Although the fact that this histogram has 164 buckets already, I wonder if > there is something weird with the computation thats causing this to be so > large? It appears to be coming from updates to system.local > {code} > org.apache.cassandra.metrics:type=Table,keyspace=system,scope=local,name=ColUpdateTimeDeltaHistogram > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)