You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Stefan Podkowinski (JIRA)" <ji...@apache.org> on 2016/06/07 12:52:21 UTC
[jira] [Commented] (CASSANDRA-11960) Hints are not seekable
[ https://issues.apache.org/jira/browse/CASSANDRA-11960?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15318414#comment-15318414 ]
Stefan Podkowinski commented on CASSANDRA-11960:
------------------------------------------------
This looks like this was caused by CASSANDRA-5863, where the {{RandomAccessReader}} based input has been replaced with {{RebufferingInputStream}}.
The way I understand how hint dispatching is currently implemented is that we deliver hints from a file by sending individual {{HintsReader.Page}} s until finished. In cases of any error while transmitting a page, {{HintsStore.markDispatchOffset}} will be used to remember from where to resume delivering hints by using a long offset. Since the byte offset based seek isn't supported anymore due to mentioned changes, the exception is thrown.
> Hints are not seekable
> ----------------------
>
> Key: CASSANDRA-11960
> URL: https://issues.apache.org/jira/browse/CASSANDRA-11960
> Project: Cassandra
> Issue Type: Bug
> Reporter: Robert Stupp
>
> Got the following error message on trunk. No idea how to reproduce. But the only thing the (not overridden) seek method does is throwing this exception.
> {code}
> ERROR [HintsDispatcher:2] 2016-06-05 18:51:09,397 CassandraDaemon.java:222 - Exception in thread Thread[HintsDispatcher:2,1,main]
> java.lang.UnsupportedOperationException: Hints are not seekable.
> at org.apache.cassandra.hints.HintsReader.seek(HintsReader.java:114) ~[main/:na]
> at org.apache.cassandra.hints.HintsDispatcher.seek(HintsDispatcher.java:79) ~[main/:na]
> at org.apache.cassandra.hints.HintsDispatchExecutor$DispatchHintsTask.deliver(HintsDispatchExecutor.java:257) ~[main/:na]
> at org.apache.cassandra.hints.HintsDispatchExecutor$DispatchHintsTask.dispatch(HintsDispatchExecutor.java:242) ~[main/:na]
> at org.apache.cassandra.hints.HintsDispatchExecutor$DispatchHintsTask.dispatch(HintsDispatchExecutor.java:220) ~[main/:na]
> at org.apache.cassandra.hints.HintsDispatchExecutor$DispatchHintsTask.run(HintsDispatchExecutor.java:199) ~[main/:na]
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[na:1.8.0_91]
> at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_91]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_91]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_91]
> at java.lang.Thread.run(Thread.java:745) [na:1.8.0_91]
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)